国产探花免费观看_亚洲丰满少妇自慰呻吟_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定義,就會報錯。


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

圖片精選

主站蜘蛛池模板: 枞阳县| 漾濞| 乳山市| 兖州市| 固安县| 陇川县| 正宁县| 清河县| 梨树县| 宁波市| 万载县| 普宁市| 漯河市| 右玉县| 贵阳市| 枣强县| 闽清县| 崇信县| 新昌县| 从江县| 嘉黎县| 潼南县| 准格尔旗| 西乌珠穆沁旗| 万源市| 清镇市| 宝丰县| 沂源县| 新沂市| 嵊州市| 麦盖提县| 共和县| 建宁县| 永胜县| 当阳市| 南召县| 黑河市| 大荔县| 龙岩市| 陈巴尔虎旗| 淄博市|