ホームページ > 記事 > ウェブフロントエンド > letとconstの特徴
let の特徴:
1. 変数の昇格現象はありません。つまり、宣言前に使用された場合は ReferenceError が報告されます。 for ループカウンターと連携します。
2. 一時的なデッドゾーン: つまり、let を使用してブロックレベルのスコープで変数を宣言すると、その変数はそのスコープ内でのみ使用できます。
3. 繰り返しの宣言は許可されません。let で宣言された変数を再度宣言することはできません。宣言しない場合は、エラーが報告されます。
constの特徴:
1. 変数昇格現象はありません。
2. 一時的なデッドゾーン。
3. 重複した発言は禁止されています。
4. 宣言された定数は読み取り専用の定数であり、宣言時に初期化する必要があります。
5. 本質的に格納されるのはメモリアドレスであり、このアドレスに複合型データの値が格納され、このポインタが指すオブジェクトを変更することができます。ただし、単一のポインタを変更することはできません。
cost foo = {}; // 可以改变foo的属性 foo.prop = 123; foo.prop //123 // 不可以使foo指向别的对象 foo = {}; //TypeError: "foo" is read-only
オブジェクトを凍結:
// 彻底冻结 var constantize = (obj) => { Object.freeze(obj); Object.keys(obj).forEach( (key, i) => { if( typeof obj[key] === 'object' ){ constantize( obj[key] ); } }); }
以上がletとconstの特徴の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。