国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

淺談JavaScript中定義變量時有無var聲明的區別

2024-05-06 16:07:45
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了JavaScript中定義變量時有無var聲明的區別分析以及示例分享,需要的朋友可以參考下
 
 

前段時間回答了一個關于定義變量時使用關鍵字var與否的區別,總結回顧一下。

1.在函數作用域內 加var定義的變量是局部變量,不加var定義的就成了全局變量。
使用var定義:

var a = 'hello World';function bb(){ var a = 'hello Bill'; console.log(a);  }bb()      //'hello Bill'console.log(a);  //'hello world'

不使用var定義:

var a = 'hello World';function bb(){ a = 'hello Bill'; console.log(a);  }bb()      //'hello Bill'console.log(a);  //'hello Bill'

2.在全局作用域下,使用var定義的變量不可以delete,沒有var 定義的變量可以delete.也就說明隱含全局變量嚴格來說不是真正的變量,而是全局對象的屬性,因為屬性可以通過delete刪除,而變量不可以。

3.使用var 定義變量還會提升變量聲明,即
使用var定義:

function hh(){ console.log(a); var a = 'hello world';}hh()      //undefined

不使用var定義:

function hh(){ console.log(a); a = 'hello world';}hh()      //'a is not defined'

這就是使用var定義的變量的聲明提前。

4.在ES5的'use strict'模式下,如果變量沒有使用var定義,就會報錯。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 广平县| 嘉义县| 聊城市| 济南市| 宁明县| 安远县| 山阳县| 河池市| 通江县| 明光市| 重庆市| 乌兰察布市| 日照市| 始兴县| 淮阳县| 崇阳县| 章丘市| 临洮县| 台中县| 太原市| 洪泽县| 雷山县| 怀集县| 南通市| 民勤县| 涞源县| 青神县| 明光市| 缙云县| 吉安县| 蚌埠市| 禹城市| 巴东县| 四子王旗| 虹口区| 车险| 疏附县| 桂平市| 成都市| 淮南市| 兴山县|