ホームページ > 記事 > ウェブフロントエンド > Var vs Let vs Const
ヴァル
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 変数を再割り当てできます。ただし、同じブロック内で同じ変数を再宣言することはできませんが、別のブロックで再宣言することはできます。
定数
{ 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 変数はグローバル スコープにないため、ブロックの外にある const 変数にアクセスすることはできません。同じブロック内で変数を再宣言することはできませんが、ブロックの外で再宣言することはできます。
以上がVar vs Let vs Constの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。