مقدمة
قبل بضع سنوات ، عندما نفذت SpidermonKey وضعًا صارمًا ، علمت أن الوضع الصارم يعطل كتابة منطقة عدد صحيح الثماني. نظرًا لوجود أدلة على أن بعض المبتدئين سيستخدمون 0s الرائدة لمحاذاة الأرقام في صفوف متعددة ، مما يؤدي إلى نتائج غير متوقعة:
var sum = 015 + // يعادل 13 في عشري ، وليس 15 197 + 001 ؛ // على أي حال ، إنه 1console.log (sum) // المبلغ الذي تم الحصول عليه بالإضافة هو 211 ، وليس 213 كما يعتقد المبتدئون
ومع ذلك ، لا يزال بعض المطورين بحاجة إلى أعداد صحيحة أوكتال (خاصةً مطوري امتداد موزيلا ومطوري Node.js) ، والأكثر شيوعًا هو عند معالجة أذونات الملفات (755 ، 644). لذلك ، أضاف ES6 طريقة كتابة عدد صحيح ثم ثماني. على غرار سداسي عشري 0x أو 0x ، يستخدم عدد صحيح الثماني الجديد 0O أو 0O كمعرف رائد ، يليه عدة أحرف رقمية ثماني (من 0 إلى 7). لن تؤدي طريقة الكتابة هذه إلى إزعاج المبتدئين:
var default_perms = 0o644 ؛ // متاح أيضًا في الوضع الصارم
تجدر الإشارة إلى أن قابلية قراءة البادئة 0O سيئة للغاية (0 و BANCASE O تبدو متشابهة للغاية ومن الصعب التمييز). طرحت هذا السؤال على Esdiscuss ، على أمل تعطيل بادئة Agulcase 0O. ومع ذلك ، لا يزال القرار الحالي لـ TC39 يعتقد أن الاتساق يجب أن يكون أكبر من قابلية القراءة (يعني الاتساق أنه يجب أن يكون متسقًا مع 0x و 0b). أعتقد أن هذا القرار قابل للنقاش ، وأوصي بعدم استخدام الأحرف الكبيرة 0O.
بالإضافة إلى ذلك ، يحتاج بعض المطورين أيضًا إلى طريقة كتابة كمية السطح العددية الثنائية ، والتي لم يتم دعمها من قبل ECMASCRIPT. يدعم ES6 طريقة الكتابة هذه ، على غرار الأوكتال والسداسي ، باستخدام البادئات 0B أو 0B:
var flt_signbit = 0B100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
حاليًا قام Firefox Aurora بتنفيذ هاتين الجملة. إذا كنت أكثر مغامرة ، فيمكنك أيضًا استخدام Firefox Nightly المحدثة.
لخص
ما سبق هو المحتوى الكامل لهذه المقالة. آمل أن يكون محتوى هذه المقالة مفيدًا للجميع في تعلم ES6. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة للتواصل.