فهم دلالات وظائف مستوى الكتلة ES6
مقدمة
مع ظهور ES6، الكتلة أصبحت إعلانات الوظائف على المستوى إضافة قيمة للغة. على الرغم من الافتراضات الأولية، فإن الدلالات الدقيقة لهذه الوظائف تشمل نطاقًا أوسع، بما في ذلك الفروق بين الأوضاع الصارمة وغير الصارمة واعتبارات توافق المتصفح.
الدلالات
يلخص الجدول أدناه الجوانب الرئيسية لدلالات الوظائف على مستوى الكتلة:
مرئية من الخارج الكتلة | تم الرفع إلى أعلى الكتلة | TDZ | |
---|---|---|---|
نعم مثل var | نعم | لا شيء | صارم، لا توجد ملحقات ويب |
نعم | لا شيء | ملحقات الويب غير الصارمة | |
نعم | لا شيء | ملحقات الويب الصارمة | |
نعم، مرتين (وظيفة والكتلة) | الربط على نطاق الوظيفة لم يتم تعريفه من قبل إعلان |
يشير مفهوم "الوضع الصارم" في هذا السياق إلى الفتحة الداخلية [[Strict]] لل كائن الوظيفة، وليس صرامة الوظيفة نفسها. ولذلك، فإن مقتطف الشفرة الذي يتضمن إعلان دالة مع "استخدام صارم" ضمن تعليمات برمجية محيطة غير صارمة لا يزال يعتبر "غير صارم". ملحقات" تنطبق فقط على التعليمات البرمجية غير الصارمة (القذرة) مع ظهور بيان الوظيفة "العقلاني". في الوضع غير المتقن مع دلالات توافق الويب، يتم التعامل مع إعلان الوظيفة داخل الكتلة على النحو التالي:
يتم رفع إعلان الوظيفة إلى أعلى الكتلة المعجمية.
إعلان var يتم رفعه إلى الوظيفة المتضمنة، وتهيئته إلى غير محدد.عند تقييم إعلان الوظيفة، يتم تعيين كائن الوظيفة إلى نطاق الوظيفة متغير.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3