瓦爾
var a = 11; { var a = 8; }; console.log(a);// 8 ------------------------------------------------------------------------- var a = 11; { a = 28; }; console.log(a);// 28
用var宣告的變數在全域範圍內。我們甚至可以在區塊外存取 var 變量,因為它不是區塊作用域的。此外,我們可以在區塊內部和外部重新宣告和重新指派 var 變數。
讓
{ let a = 24; } console.log(a);// ReferenceError: a is not defined ------------------------------------------------------------------------- { let a = 24; console.log(a);// 24 } ------------------------------------------------------------------------- { let a = 24; a = 20; console.log(a);// 20 }// ------------------------------------------------------------------------- { let a = 24; let a = 20; console.log(a);//SyntaxError: Identifier 'a' has already been declared } ------------------------------------------------------------------------- let a = 20; { let a = 24; console.log(a);// 24 }
let有獨立的記憶體空間和區塊作用域。用let宣告的變數不能在區塊外訪問,因為它們不在全域範圍內。我們可以重新指派一個 let 變數。但是,我們不能在同一個區塊中重新聲明相同的變量,但我們可以在不同的區塊中重新聲明它。
常數
{ const x = 4; } console.log(x);//ReferenceError: x is not defined ------------------------------------------------------------------------- { const x = 4; console.log(x) ;// 4 } ------------------------------------------------------------------------- { const x = 4; const x = 2; } console.log(x);//SyntaxError: Identifier 'x' has already been declared ------------------------------------------------------------------------- { const x = 4; } const x = 2; console.log(x);// 2 ------------------------------------------------------------------------- const x = 2;// we can access the global(x) { const x = 4; // we cannot access the outside block } console.log(x);// 2
const有獨立的記憶體空間,並且是區塊作用域的。一旦用 const 宣告並初始化了一個值,就不能重新宣告或重新指派它。我們無法在其區塊之外存取 const 變量,因為它不在全域範圍內。我們不能在同一塊內重新聲明變量,但可以在區塊外重新聲明它。
以上是Var、Let 和 Const的詳細內容。更多資訊請關注PHP中文網其他相關文章!