عن المشروع
# ما هذا بحق الجحيم جافاسكريبت؟
هذا المستودع عبارة عن مجموعة من أمثلة جافاسكريبت الطريفة والمحيّرة، مستوحاة من محاضرة برايان ليرو "WTFJS" في dotJS 2012. يهدف إلى جمع مقتطفات برمجية مجنونة وشرح كيفية عملها، مع الإشارة غالبًا إلى مواصفة ECMA-262.
الدليل متاح كحزمة npm (`wtfjs`) للقراءة دون اتصال، وقد تُرجم إلى عدة لغات منها الصينية والهندية والفرنسية والبرتغالية والبولندية والإيطالية والكورية.
## نظرة عامة على المحتوى
تتضمن القائمة أكثر من 60 مثالًا، لكل منها مقتطف برمجي وشرح مفصل. تغطي المواضيع:
- **غرائب المساواة والإكراه**: مثل `[] == ![]` تساوي `true`، و`true == []` تساوي `false`، و`null == false` تساوي `false`.
- **عجائب NaN والأرقام**: `NaN === NaN` تساوي `false`، و`Number.MIN_VALUE > 0` تساوي `true`، وحالات حدية في `parseInt`.
- **سلوكيات المصفوفات والنصوص**: دمج المصفوفات، الفواصل الزائدة، وحوش مساواة المصفوفات.
- **شذوذ الدوال والأصناف**: أخطاء `class Foo extends null`، ودوال السهم التي لا تكون مُنشِئات.
- **حيل متنوعة**: `"b" + "a" + +"a" + "a"` ينتج `'baNaNa'`، وتعليقات HTML في جافاسكريبت، و`document.all` التي تكون undefined، والمزيد.
كل مثال مشروح بروابط إلى الأقسام ذات الصلة من مواصفة ECMA-262 أو مراجع خارجية، مما يجعله مرجعًا مفيدًا للمبتدئين الساعين إلى فهم أعمق وللمحترفين الباحثين عن مجموعة من حواف جافاسكريبت غير المتوقعة.
## الدافع
الهدف الأساسي هو المتعة والتعلم. يشجع المؤلف القراء على استكشاف المواصفة واكتشاف شيء جديد، سواء كانوا مبتدئين أو مطورين ذوي خبرة.
## الاستخدام
التثبيت عبر npm:
```
$ npm install -g wtfjs
```
ثم شغّل `wtfjs` لفتح الدليل في العارض المفضل لديك.
## الترجمات
تتوفر ترجمات يديرها المجتمع لعدة لغات، وإن كانت قد لا تشمل كل مثال أو تكون محدثة بالكامل.
## الترخيص
صدر تحت رخصة WTFPL 2.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.