。メリーランド州Tahazzot:
私たちは、それが知ってlet
いる予約された JavaScriptで変数を定義するキーワード。
var let = 2;
console.log(let); // return 2
では、なぜこれはエラーではありませんか?
CertainPerformance:
let
strictモードでのみ予約語です。
'use strict';
var let = 5;
キャッチされないでSyntaxError:予期しないstrictモード予約語
ブラウザは一般的に優先順位をつけるためです下位互換性何よりもを。が、let
ES2015に導入された(そしてその使用はいつか前に、その後、予見された)、使用前にスクリプトlet
必要に応じて、変数名としては、仕事を続けるでしょう。たとえば、あなたのスクリプトは、2008年に書かれたとします。
var let = 2;
console.log(let);
そして、それは2020年に作業を続けるにもなります。
非常に同様の理由で、async
とawait
もされている変数名として許可。
使用する理由についてはlet
strictモードでエラーが-厳密モードは、その後2009年バックに、ES5で導入された、新しいキーワード(複数可)の使用は、変数を宣言することを言語設計者ののこぎりは、それがwasn将来の可能性があったが、 「トンまだ石でセット、およびES6はまだ長い方法オフになっていました。ES5が出てきたら、スクリプト作成者は、コードそれほど混乱を作るためにstrictモードにして、選ぶ、と明示的なエラーをサイレントエラーを変更することができます。がlet
変数宣言のために使用できませんでしたまだ、厳密モードで変数名としてそれを禁止するの可読性向上将来の任意の既存のスクリプトを破壊しないが、厳密モードにオプトインスクリプト。