原文:JS-用var聲明變量和不用var聲明變量的區別

當不用var聲明一個JavaScript全局變量時,實際上是定義了全局對象的一個屬性。 在客戶端的JavaScript中,在瀏覽器窗口中的所有JavaScript代碼中,Window對象充當了全局對象。 當使用var聲明一個變量時,創建的這個屬性是不可配置的,也就是說這個變量無法通過delete運算符刪除。如果你沒有使用嚴格模式並給一個未聲明的變量賦值的話,JavaScript會自動創建一個全局變 ...

2017-04-05 14:53 0 5171 推薦指數:

查看詳情

js不用var聲明變量問題

function f1(){   n = 999;   nAdd = function(){     console.log('nAdd')   } } f1(); console.log(n); // 999 console.log(nAdd()); // 'nAdd' 當不聲明變量 ...

Sat Oct 10 06:25:00 CST 2020 0 844
js 聲明變量var和不帶的區別

全局上下文中 帶var變量聲明一個全局變量,不能被delete刪除 不帶var變量是 創建一個全局對象(window)的屬性,可以用delete關鍵字刪除 函數上下文中 帶var變量聲明一個私有變量 不帶var變量,處理機制是 沿作用域 ...

Wed Jun 24 04:06:00 CST 2020 0 898
[javascript] var let const聲明變量區別

使用var關鍵字聲明的全局作用域變量屬於window對象。 使用let關鍵字聲明的全局作用域變量不屬於window對象。 使用var關鍵字聲明變量在任何地方都可以修改。 在相同的作用域或塊級作用域中,不能使用let關鍵字來重置var關鍵字聲明變量。 在相同的作用域或塊級作用域中,不能使 ...

Fri Apr 24 01:15:00 CST 2020 0 678
js 變量聲明var使用與不使用的區別

js 變量聲明var使用與不使用的區別) 一、總結 一句話總結:不使用var聲明變量的時候,變量是全局對象(window對象)屬性,在全局中使用var聲明變量是全局變量 var 全局變量 局部變量 不使用 var 全局對象屬性 1、js變量作用域有哪兩種? 全局 函數 全局 ...

Sat Jan 05 08:00:00 CST 2019 0 1939
var、let、const聲明變量區別

let和var聲明變量區別:1.let所聲明變量只在let命令所在的代碼塊內有效。(塊級作用域) 另外,for循環還有一個特別之處,就是設置循環變量的那部分是一個父作用域,而循環體內部是一個單獨的子作用域。 2.let命令不存在變量 ...

Mon Feb 25 19:14:00 CST 2019 0 6568
JS中的變量聲明var let const

ES6之前,JS都只用var聲明變量。ES6不僅增加了let和const兩個關鍵字,而且還讓這兩個關鍵字壓倒性的超越var成為首選。 1.var 使用var聲明變量變量會被自動添加到最近的上下文(作用域)。   如在函數中,最近的上下文就是函數的局部上下文。如果變量未經聲明就被初始化 ...

Thu Jan 14 18:36:00 CST 2021 0 457
Javascript 聲明時用“var”跟不用"var"的區別

  Javascript聲明變量的時候,雖然用var關鍵字聲明不用關鍵字聲明,很多時候運行並沒有問題,但是這兩種方式還是有區別的。可以正常運行的代碼並不代表是合適的代碼。 var num = 1; 是在當前域中聲明變量. 如果在方法中聲明,則為局部變量(local variable);如果是 ...

Mon Apr 08 16:05:00 CST 2013 12 4004
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM