ホームページ  >  記事  >  ウェブフロントエンド  >  js で定義された変数 let と var の違いは何ですか?

js で定義された変数 let と var の違いは何ですか?

亚连
亚连オリジナル
2018-06-06 17:50:402135ブラウズ

この記事では、js で定義された let と var の違いを主に紹介します。非常に優れており、必要な友人は参考にしてください。

javascript strict モード

let キーワードに注意する必要があります。非常に重要な概念の 1 つは、「JavaScript 厳密モード」です。たとえば、次のコードを実行すると、エラーが報告されます。メッセージは次のとおりです:

let hello = 'hello world.';
console.log(hello);

解決策は、ファイルヘッダーに「javascript strict mode」ステートメントを追加することです:

let hello = 'hello world.';
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
 ...

let キーワードと var キーワードの類似点と相違点

宣言後に値が割り当てられていない場合、パフォーマンスは同じです

'use strict';
let hello = 'hello world.';
console.log(hello);

宣言されていない変数を使用すると、パフォーマンスが異なります:

'use strict';
(function() {
 var varTest;
 let letTest;
 console.log(varTest); //输出undefined
 console.log(letTest); //输出undefined
}());

同じ変数を繰り返し宣言すると、パフォーマンスが異なります:

(function() {
 console.log(varTest); //输出undefined(注意要注释掉下面一行才能运行)
 console.log(letTest); //直接报错:ReferenceError: letTest is not defined
 var varTest = 'test var OK.';
 let letTest = 'test let OK.';
}());

変数のスコープとパフォーマンスは異なります

'use strict';
(function() {
 var varTest = 'test var OK.';
 let letTest = 'test let OK.';
 var varTest = 'varTest changed.';
 let letTest = 'letTest changed.'; //直接报错:SyntaxError: Identifier 'letTest' has already been declared
 console.log(varTest); //输出varTest changed.(注意要注释掉上面letTest变量的重复声明才能运行)
 console.log(letTest);
}());

上記は私がやったものです将来すべての人に役立つことを願っています。

関連記事:

vueプロジェクトにelementUIコンポーネントを導入する方法を詳しく解説

Vue-cliで別ページの背景色を設定する方法

vueの更新とタブ切り替え

以上がjs で定義された変数 let と var の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。