javascript
の時間的デッドゾーンを理解するJavaScriptを使用している間、宣言された変数にアクセスするときに「時間的デッドゾーン」という用語に遭遇する可能性があります。初期化の前にletとconstを使用します。これにより、リファレンスエラーにつながり、頭を掻きます。変数(letまたはconstで宣言された)では、変数がまだ定義されていない場合。この未定義の期間は、変数が初期化が処理されるポイントまで宣言されている瞬間から存在します。それらが定義されているブロックに限られた範囲を持っています。宣言を範囲の上部に移動するというJavaScript通訳のメカニズムであるHoistingは、LETおよびconst変数には適用されません。これにより、変数が既に宣言されているがアクセスできないままである時間帯の作成が行われます。ゾーンはリファレンスエラーをスローします。例は次のとおりです。 // 未定義 console.log(alet); //参照エラー:初期化前に「alet」にアクセスできません var avar = 1; let alet = 2;
このコードでは、varで宣言されたavarは、初期化の前にアクセスできますが、letで宣言されたaletはできません。これは、avarが巻き上げられたためですが、aletはそうではありません。 ブロックスープされた変数に初期化される前にアクセスします。
回避
時間を回避するために、それらにアクセスする前にブロックスープされた変数を初期化することを確認してください。別のアプローチは、ブロックの外側で宣言されたグローバルLETまたはconst変数を使用することです。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3