ホームページ > 記事 > ウェブフロントエンド > JavaScriptのvar、let、constの違いは何ですか?
違い: 1. var 変数は関数またはグローバル スコープであり、let 変数と const 変数はブロック スコープです; 2. let 変数と const 変数は一時的なデッド ゾーンの影響を受けますが、var 変数は3. var 変数は割り当ておよび宣言できますが、letr 変数は割り当て可能ですが再宣言できません。また、const 変数は再割り当ておよび宣言できません。
関連する推奨事項: 「JavaScript ビデオ チュートリアル 」
最新の ES6 では、新しい There が追加されたことは誰もが知っています。 let と const は変数宣言に使用される 2 つのキーワードですが、この 2 つは以前よく使用されていた var と何が違うのでしょうか?今日は見てみましょう。
1. const ステートメント
const ステートメントは、JavaScript で変数を宣言するために使用されます。変数は次の規則に従います。のブロックスコープ。
は「一時的なデッドゾーン」の対象となります。
ウィンドウ上にグローバル プロパティは作成されません。
再割り当てはできません。
再宣言することはできません。
const ステートメントで定義された変数は変更できないため、初期化する必要があります。
const b = 2;//正确 // const b;//错误,必须初始化 console.log('函数外const定义b:' + b);//有输出值 // b = 5; // console.log('函数外修改const定义b:' + b);//无法输出
var ステートメントは、JavaScript で変数を宣言するために使用されます。変数は次の規則に従います:
スコープ関数スコープまたはグローバルスコープです。
は、一時的なデッド ゾーン (TDZ) によって制限されません。
ウィンドウ上に同じ名前のグローバル プロパティが作成されます。
は再割り当て可能です。
は再宣言可能です。
var で定義された変数は変更可能です。初期化されていない場合は、unknown が出力され、エラーは報告されません。
var a = 1; // var a;//不会报错 console.log('函数外var定义a:' + a);//可以输出a=1 function change(){ a = 4; console.log('函数内var定义a:' + a);//可以输出a=4 } change(); console.log('函数调用后var定义a为函数内部修改值:' + a);//可以输出a=4
let ステートメントは、次の規則に従って JavaScript で変数を宣言します:
ブロック スコープに属します。
は一時的なデッド ゾーンの対象となります。
ウィンドウ上にグローバル プロパティは作成されません。
は割り当て可能です。
再宣言することはできません。
let はブロックレベルのスコープに属します。let が関数内で定義された後は、関数の外部には影響しません。
let c = 3; console.log('函数外let定义c:' + c);//输出c=3 function change(){ let c = 6; console.log('函数内let定义c:' + c);//输出c=6 } change(); console.log('函数调用后let定义c不受函数内部定义影响:' + c);//输出c=3
をご覧ください。 !
以上がJavaScriptのvar、let、constの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。