ホームページ >ウェブフロントエンド >jsチュートリアル >JSのletとvarの違い
JavaScript における let と var の主な違いは次のとおりです。 スコープ: let は宣言ブロック内でのみ表示されますが、var は関数全体またはグローバル スコープ内で表示されます。宣言の巻き上げ: var 宣言はスコープの先頭に昇格されます。let は宣言位置でのみ使用できます。再宣言: let の再宣言はエラーを生成しますが、var はその値を上書きします。
#JavaScript の let と var の違い
JavaScript の let と
var は変数を宣言する 2 つの異なる方法であり、スコープ、宣言のホイスティング、および再宣言に大きな違いがあります。
スコープ
関数またはグローバル スコープで宣言された変数は、関数またはグローバル スコープ全体で使用されます。グローバル スコープは、他のコード ブロック内にネストされている場合でも表示されます。
は、そのブロック内でのみ表示されます。
宣言ホイスティング
によって宣言された変数スコープの最上位に昇格します。これにより、初期化されていない変数が作成され、予期しない動作が発生する可能性があります。
再宣言
変数が同じスコープ内で再宣言された場合、その値は上書きされます。
変数を再宣言すると、変数がすでに存在するため、構文エラーが発生します。
<code class="javascript">// var 声明全局变量,即使在函数内也可见
var x = 10;
// let 声明块级变量,仅在 if 语句中可见
if (true) {
let y = 20;
console.log(y); // 20
}
console.log(x); // 10
// console.log(y); // 错误:y 未定义</code>
const
はすべてブロックレベルのスコープ変数ですが、const
は定数値を表すため、再割り当てすることはできません。
let
と const
をお勧めします。
以上がJSのletとvarの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。