33 مفاهيم يجب أن يعرف كل مطور JavaScript
مقدمة
تم إنشاء هذا المستودع بقصد مساعدة المطورين على إتقان مفاهيمهم في JavaScript. إنه ليس شرطًا ، ولكنه دليل للدراسات المستقبلية. يعتمد على مقال كتبه ستيفن كورتيس ويمكنك قراءته هنا.
يعتبر Github أحد أفضل مشاريع المصادر المفتوحة لعام 2018!
مجتمع
لا تتردد في إرسال العلاقات العامة عن طريق إضافة رابط إلى خلاصاتك أو مراجعاتك. إذا كنت ترغب في ترجمة الريبو إلى لغتك الأم ، فلا تتردد في القيام بذلك.
سيتم سرد جميع الترجمات لهذا الريبو أدناه:
- آلَوَوَوَبَيَ (عربي) - عمر كيسكيلي
- ъъаарски (bulgarian) - thewebmasterp
- 汉语 (صينية) - إعادة تيان
- البرتغدو دو برازيل (البرتغالي البرازيلي) - تياجو بوينج
- 한국어 (كوري) - سوين لي
- Español (الإسبانية) - Adonis Mendoza
- Türkçe (تركي) - ̇lker demir
- руекий зызы (روسي) - Mihail Gumennii
- tiếng việt (الفيتنامي) - Nguyễn trần chung
- Polski (البولندية) - Dawid Lipinski
- فaarsی (الفارسية) - ماجد ألافيزاده
- بهاسا إندونيسيا (إندونيسية) - ريجدزوان سامبويرنا
- فرانسايس (فرنسي) - روبن ميترال
- हिन (الهندية) - فيكاس تشوهان
- ελληνικά (اليونانية) - ديميتريس زاراشانيس
- 日本語 (ياباني) - OIMO23
- Deutsch (الألمانية) - بورهان
- уккраї́нвذلك
- සිංහල (Sinhala) - Udaya Shamendra
- Italiano (الإيطالي) - Gianluca Fiore
- لاتفيو (لاتفيان) - جنيس
- Afaan Oromoo (Oromo) - أمانويل داغنشيو
- ภาษาไทย (التايلاندية) - أريف وارام
- كاتال (كاتالاني) - ماريو استرادا
- Svenska (السويدية) - فينيكس هونغيل
- ខ្មែរ (الخمير) - Chrea Chanchhunneng
- አማርኛ (إثيوبي) - Miniyahil Kebede (ምንያህል ከበደ)
- беларуека мова (Belarussian) - Dzianis yafimau
- O'Zbekcha (Uzbek) - Shokhrukh Usmonov
- الأردية (الحردو) - ياسر نواز
- ماراثي (म) - Dhruv Chandak
- हिन (الهندية) - ماهيما تشوهان
- বাংলা (البنغالية) - جيسن ميا
- ગુજરાતી (غوجاراتي) - Vatsal Bhuva
- سنتي (سيندي) - صني غاندواني
- भोजपु (Bhojpuri) - Pronay Debnath
- ਪੰਜਾਬੀ (البنجابية) - قاسية ديف باثاك
- தமிழ் (التاميل) - Jaimin Chovatia
- اللاتينية (اللاتينية) - قاسية ديف باثاك
- മലയാളം (مالايالام) - أكشاي مانوج
- Yorùbá (Yoruba) - Ayomide Bajulaye
- עברית (Hebrew) — Refael Yzgea
جدول المحتويات
- مكدس الاتصال
- الأنواع البدائية
- أنواع القيمة وأنواع المراجع
- ضمني ، صريح ، اسمي ، هيكلة وطبقة البط
- == vs === vs typeof
- نطاق الوظيفة ، نطاق الكتلة والنطاق المعجمي
- التعبير مقابل البيان
- iife والوحدات النمطية ومساحات الأسماء
- قائمة انتظار الرسائل وحلقة الحدث
- setTimeout ، setInterval و requestAnimationFrame
- محركات JavaScript
- مشغلات bitwise ، والصفائف الكتابة ومؤسسات الصفيف
- دوم وتخطيط أشجار
- المصانع والطبقات
- هذا ، اتصل ، تطبيق وربط
- جديد ، مُنشئ ، مثيل ومثيلات
- ميراث النموذج الأولي وسلسلة النموذج الأولي
- Object.create و Object.assign
- خريطة ، تقليل ، تصفية
- الوظائف النقية والآثار الجانبية وطفرة الحالة وتكاثر الأحداث
- الإغلاق
- وظائف الترتيب العالي
- عودة
- المجموعات والمولدات
- وعود
- غير متزامن/في انتظار
- هياكل البيانات
- عملية باهظة الثمن وتدوين كبير
- الخوارزميات
- الميراث ، تعدد الأشكال وإعادة استخدام الكود
- أنماط التصميم
- التطبيقات الجزئية ، الكاري ، التأليف والأنابيب
- رمز نظيف
1. مكدس المكالمة
مكدس الاتصال هو آلية يستخدمها مترجم JavaScript لتتبع تنفيذ الوظائف داخل البرنامج. في JavaScript ، يتم تنفيذ الوظائف بالترتيب الذي يطلق عليه. يتبع مكدس المكالمات مبدأ الأخير ، الأول (LIFO) ، مما يعني أن الوظيفة الأخيرة التي يتم دفعها على المكدس هي أول وظيفة يتم تنفيذها.
وفقًا لمواصفات ECMASCRIPT ، يتم تعريف مكدس الاتصال كجزء من سياق التنفيذ. عندما يتم استدعاء وظيفة ، يتم إنشاء سياق تنفيذ جديد ووضعه في الجزء العلوي من المكدس. بمجرد اكتمال الوظيفة ، تتم إزالة سياق التنفيذ الخاص بها من المكدس ، ويعود التحكم إلى السياق السابق. يساعد هذا في إدارة تنفيذ التعليمات البرمجية المتزامنة ، حيث يجب اكتمال كل مكالمة دالة قبل بدء التشغيل التالي.
مرجع
مقالات
- فهم مكدس جافا سكريبت ، حلقات الأحداث - Gaurav Pandvia
- فهم مكدس جافا سكريبت - تشارلز فريدبورن
- JavaScript: ما هو سياق التنفيذ؟ ما هو مكدس المكالمات؟ - فالنتينو غالياردي
- ما هي حلقة حدث JS ومكدس الاتصال؟ - جيس تيلفورد
- فهم سياق التنفيذ ومكدس التنفيذ في JavaScript - Sukhjinder Arora
- كيف يعمل JavaScript تحت الغطاء: نظرة عامة على محرك JavaScript ، كومة ، ومكدس الاتصال - Bipin Rajbhar
- تم شرح مكدس استدعاء JS في 9 دقائق - Colt Steel (YouTube)
- مكدس المكدس في JavaScript - سيد رافسان رايان
مقاطع الفيديو
- JavaScript: شرح مكدس المكالمات - كتل الترميز الهند
- شرح مكدس مكالمة JS في 9 دقائق - كولت ستيل
- ما هو مكدس المكالمات؟ - إريك تراوب
- مكدس المكالمات - كيفن درام
- فهم تنفيذ JavaScript - CODESMITH
- ما هي حلقة الحدث على أي حال؟ - فيليب روبرتس
- كيف يتم تنفيذ رمز JavaScript؟ ❤ & Call Stack - Akshay Saini
- مكدس المكالمات - CS50
- تعلم مكدس مكالمة JavaScript - CodeCupDev
- وظائف JavaScript ومكدس المكالمات | كيف تعمل مكدس المكالمات - chidre'stechtutorials
⬆ العودة إلى الأعلى
2. الأنواع البدائية
وفقًا لمواصفات ECMASCRIPT ، لدى JavaScript ستة أنواع بيانات بدائية: السلسلة ، الرقم ، Bigint ، Boolean ، غير محدد ، والرمز. هذه الأنواع غير قابلة للتغيير ، مما يعني أنه لا يمكن تغيير قيمها. هناك أيضًا نوع بدائي خاص يسمى NULL ، والذي يمثل الغياب المتعمد لأي قيمة كائن.
يتم تعيين القيم البدائية مباشرة إلى متغير ، وعندما تتعامل مع نوع بدائي ، فأنت تعمل مباشرة على القيمة. على عكس الكائنات ، لا تحتوي البدائية على خصائص أو طرق ، لكن JavaScript يلف تلقائيًا القيم البدائية مع نظيرات الكائن عند الضرورة (على سبيل المثال ، عند استدعاء طرق على السلاسل).
مرجع
- أنواع بيانات JavaScript وهياكل البيانات - MDN
مقالات
- أنواع البيانات البدائية وغير المناسبة في JavaScript-geeksforgeeks
- متغيرات JavaScript (تفكير المبتدئين)
- كيف يتم ترميز الأرقام في JavaScript - الدكتور Axel Rauschmayer
- ما تحتاج لمعرفته حول نوع رقم JavaScript - Max Wizard K
- ما يجب أن يعرفه كل مطور JavaScript عن أرقام النقاط العائمة - Chewxy
- الحياة السرية لجافا سكريبت - أنجوس كول
- الأنواع البدائية - التدفق
- (لا) كل شيء في JavaScript هو كائن - دانيال لي
- أنواع بيانات JavaScript وهياكل البيانات - MDN
- الغوص أعمق في كائنات JavaScripts - Arfat Salman
- الاختلافات بين الكائن.
- اعتراض على التحويل البدائي - javaScript.info
- طرق البدائية - javaScript.info
مقاطع الفيديو
- مرجع JavaScript مقابل الأنواع البدائية - AcademInd
- الأنواع البدائية JavaScript - Simon Sez It
- أنواع القيمة وأنواع المراجع في JavaScript - البرمجة مع Mosh
- أنواع البيانات البدائية JavaScript - AVELX
- كل ما لم ترغب أبدًا في معرفته عن أرقام JavaScript - Bartek Szopka
- ما هي المتغيرات في جافا سكريبت؟ - JS للجميع
- Tipos de Datos Primitivos en JavaScript - La Cocina del Código
- نوع البيانات في JavaScript - ScholarHat
⬆ العودة إلى الأعلى
3. أنواع القيمة وأنواع المرجع
وفقًا لمواصفات ECMASCRIPT ، يتم تخزين أنواع القيمة مباشرة في الموقع الذي يصل المتغير. وتشمل هذه أنواع مثل الرقم ، والسلسلة ، والطليف ، غير محدد ، Bigint ، الرمز ، والخالية. عند تعيين نوع قيمة لمتغير ، يتم تخزين القيمة نفسها.
مقالات
- شرح القيمة مقابل المرجع في JavaScript - Arnav Aggarwal
- الأنواع البدائية والأنواع المرجعية في JavaScript - Bran van der Meer
- أنواع القيمة وأنواع المراجع والنطاق في JavaScript - بن أستون
- العودة إلى الجذور: JavaScript Value vs Reference - Miro Koczka
- فهم "بالقيمة" و "بالرجوع" في JavaScript - Léna Faure
- مرجع JavaScript ونسخ المتغيرات - Vítor Capretz
- جافا سكريبت البدائية مقابل القيم المرجعية
- JavaScript بالرجوع مقابل القيمة - nrabinowitz
- مقابلة JavaScript Prep: البدائية مقابل الأنواع المرجعية - مايك كرونين
- طريقة Foreach في JavaScript - دليل شامل
- خريطة JavaScript مقابل Foreach: متى تستخدم كل واحد - Sajal Soni
مقاطع الفيديو
- تمريرة JavaScript By Value vs Pass بالرجوع إليها - TechSith
- قيمة JavaScript مقابل أنواع المرجع - البرمجة مع Mosh
- Valores vs Refdencias en JavaScript - La Cocina del Código
- JavaScript - المرجع مقابل القيم/ الأنواع البدائية - الأوساط الأكاديمية
- أنواع القيمة وأنواع المراجع في JavaScript - البرمجة مع Mosh
⬆ العودة إلى الأعلى
4.
تعرّف مواصفات ECMAScript JavaScript كلغة مطبوعة ديناميكيًا ، مما يعني أن الأنواع مرتبطة بالقيم بدلاً من المتغيرات ، ويحدث فحص النوع في وقت التشغيل. هناك طرق مختلفة تديرها JavaScript:
الكتابة الضمنية (أو اكتب الإكراه): يحدث هذا عندما يقوم JavaScript تلقائيًا بتحويل نوع بيانات واحد إلى آخر عند الحاجة. على سبيل المثال ، قد يقوم JavaScript بتحويل سلسلة إلى رقم أثناء عملية الحساب. على الرغم من أن هذا يمكن أن يبسط بعض التعليمات البرمجية ، إلا أنه يمكن أن يؤدي أيضًا إلى نتائج غير متوقعة إذا لم يتم التعامل معها بعناية.
الكتابة الصريحة: على عكس الكتابة الضمنية ، تتضمن الكتابة الصريحة تحويل قيمة يدويًا من نوع إلى آخر باستخدام وظائف مثل الرقم () أو السلسلة () أو منطقية ().
الكتابة الاسمية: لا تدعم JavaScript الكتابة الاسمية ، حيث يتم الإعلان عن الأنواع بشكل صريح. ومع ذلك ، فإن TypeScript ، مجموعة من JavaScript ، تجلب هذه الميزة للمساعدة في التقاط الأخطاء أثناء التطوير.
هيكلة الكتابة: في هذا النوع ، تعتمد الأنواع على بنية أو خصائص البيانات. JavaScript هي لغة مكتوبة من الناحية الهيكلية حيث تكون الكائنات متوافقة إذا كانت تشترك في نفس الهيكل (أي نفس مجموعة الخصائص والأساليب).
كتابة البط: هذا مفهوم يتم تحديد ملاءمة الكائن من خلال وجود خصائص وطرق معينة ، بدلاً من النوع الفعلي للكائن. يعتمد JavaScript اعتمادًا كبيرًا على كتابة البط ، حيث يتم استنتاج السلوك من خصائص الكائن بدلاً من نوعه المعلن.
مقالات
- ما تحتاج لمعرفته حول الإكراه الضمني لـ JavaScript - وعد Tochi
- أوضح الإكراه من نوع JavaScript - Alexey Samoshkin
- أوضح جافا سكريبت - بن غاريسون
- ما هو بالضبط الإكراه في جافا سكريبت؟ - مكدس فائض
مقاطع الفيديو
- ==؟ === ؟؟؟ ...#@^٪ - Shirmung Bielefeld
- الإكراه في JavaScript - Hitesh Choudhary
- أسئلة JavaScript: ما هو الإكراه؟ - ستيفن هانكوك
- الكتابة: ثابت مقابل ديناميكي ، ضعيف مقابل قوي - codexpanse
- El Sistema de Tipos de JavaScript - La Cocina del Código
- كتابة البط في JavaScript - Techmaker Studio
- كتابة البط في JavaScript - البرمجة مع Kartik
كتب
- أنت لا تعرف JS ، الإصدار الأول: الأنواع والقواعد - كايل سيمبسون
⬆ العودة إلى الأعلى
5. == vs === vs typeof
وفقًا لمواصفات ECMASCRIPT ، يتضمن JavaScript كلا من مشغلي المساواة (===) ومشغلات (==) ، والتي تتصرف بشكل مختلف عند مقارنة القيم. هذا انهيار:
== (المساواة الفضفاضة): يقوم هذا المشغل بإكراه نوع قبل مقارنة قيمتين. إذا كانت القيم من أنواع مختلفة ، فسيحاول JavaScript تحويل إحدى القيم أو كلاهما إلى نوع مشترك قبل المقارنة ، مما قد يؤدي إلى نتائج غير متوقعة.
=== (المساواة الصارمة): يقارن هذا المشغل القيمة والنوع دون أي إكراه. إذا لم تكن القيمتان من نفس النوع ، فستعود المقارنة كاذبة.
مشغل typeof: يتم استخدام مشغل typeof للتحقق من نوع البيانات للمتغير. على الرغم من أنها موثوقة عمومًا ، إلا أن هناك بعض المراوغات ، مثل كيفية إرجاع نوع typeof null "كائن" بدلاً من "NULL" ، بسبب سلوك طويل الأمد في تنفيذ JavaScript.
مقالات
- JavaScript Double Equals مقابل Triple Equals - Brandon Morelli
- هل يجب أن أستخدم === أو == مشغل مقارنة المساواة في JavaScript؟ - Panu Pitkamaki
- لماذا تستخدم مشغل المسكين الثلاثيين في جافا سكريبت؟ - لويس لازاريس
- ما هو الفرق بين == و === في JavaScript؟ - كريج باكلر
- لماذا يعيد نوع JavaScript دائمًا "كائن"؟ - مكدس فائض
- فحص أنواع في JavaScript - توبي هو
- كيفية فحص أنواع البيانات بشكل أفضل في JavaScript - WebBjocke
- التحقق من عدم وجود قيمة في JavaScript - Tomer Aberbach
- الفرق بين == و === في JavaScript
- الفرق بين == و === في JavaScript - Geeksforgeeks
- === vs == مقارنة في JavaScript - FreeCodecamp
مقاطع الفيديو
- JavaScript - The Typeof Operator - Java Brains
- JavaScript Typeof Operator - DevDelight
- JavaScript "==" VS "===" - Web Dev مبسط
- === vs == في JavaScript - Hitesh Choudhary
- مشغل typeof في JS - CodeVault
⬆ العودة إلى الأعلى
6. نطاق الوظيفة ، نطاق الكتلة والنطاق المعجمي
تحدد مواصفات ECMASCRIPT ثلاثة أنواع رئيسية من النطاق:
نطاق الوظيفة: المتغيرات المعلنة داخل وظيفة باستخدام VAR يمكن الوصول إليها فقط داخل هذه الوظيفة. هذا النطاق يعزل المتغيرات من الوصول إليها خارج الوظيفة التي يتم الإعلان عنها.
نطاق الكتلة: تم تقديمه مع ES6 ، تم إعلان المتغيرات مع Let و Const. هذا يعني أنها لا يمكن الوصول إليها إلا داخل الكتلة المحددة {} التي يتم تعريفها فيها ، مثل الحلقات الداخلية أو الشرطية.
النطاق المعجمي: يشير إلى كيفية تحديد الوصول المتغير بناءً على الموقع الفعلي للمتغيرات في الكود. الوظائف محطمة معجمية ، مما يعني أنه يمكنهم الوصول إلى المتغيرات من نطاق الوالدين.
كتب
- أنت لا تعرف JS بعد ، الطبعة الثانية: Scope & Clofures - Kyle Simpson
مقالات
- وظائف JavaScript - فهم الأساسيات - براندون موريلي
- var ، دع ، و const - ما هو الفرق؟
- وظائف في JavaScript - Deepa Pandey
- محاكاة نطاق الكتلة في JavaScript - Josh Clanton
- الفرق بين الوظيفة ونطاق الكتلة في جافا سكريبت - جوزيف كارديلو
- نطاقات الوظائف وكتلة النطاقات في JavaScript - Samer Buna
- فهم نطاق وسياق في جافا سكريبت - ريان مور
- نطاق JavaScript والإغلاق - زيل ليو
- فهم نطاق في JavaScript - Wissam Abirached
- فهم نطاق في JavaScript - حمد أحمد
- متى تستخدم إعلان الوظيفة مقابل تعبير وظيفة - Amber Wilkie
- ورقة غش في أساسيات JavaScript: النطاق ، السياق ، و "هذا" - ألكسندرا فرين
- وظائف / نطاق الوظيفة - MDN
مقاطع الفيديو
- ما الذي يجعل JavaScript غريبًا ... و PT Awesome. 4 - LearnCode.Academy
- نطاق متغير في JavaScript - Kirupa Chinnathambi
- نطاق كتلة JavaScript ونطاق الوظائف - MMTUts
- ما هو النطاق المعجمي؟ - NWCalvank
- النطاق المتغير - ستيف غريفيث
- دروس JavaScript للمبتدئين - Mosh Hemadani
- نطاق كتلة JavaScript مقابل نطاق الوظيفة - Nivek
- النطاق المعجمي في JavaScript - Hitesh Choudhary
- معالجة النطاق الحديث في JavaScript (ES6 وما بعدها) -Prashant Dewangan
⬆ العودة إلى الأعلى
7. التعبير مقابل البيان
وفقًا لمواصفات ECMASCRIPT ، تنتج التعبيرات قيمة ، والبيانات هي تعليمات لإجراء إجراء ، مثل التعيين المتغير أو تدفق التحكم. يتم رفع إعلانات الوظيفة ويمكن استدعاؤها قبل تعريفها في الكود ، في حين أن تعبيرات الوظائف لا يتم رفعها ويجب تعريفها قبل التذرع بها.
مقالات
- كل ما تحتاج إلى معرفته حول تعبيرات جافا سكريبت وبياناتها وبيانات التعبير - وعد توشي
- تعبيرات الوظيفة مقابل إعلانات الوظيفة - بول ويلكنز
- وظيفة JavaScript - إعلان مقابل التعبير - رافي روشان
- إعلانات الوظيفة مقابل تعبيرات الوظيفة - ماندبيب سينغ
- إعلانات الوظيفة مقابل تعبيرات الوظائف - anguls croll
- بيان التعبير - مستندات الويب MDN
مقاطع الفيديو
- التعبيرات مقابل البيانات في JavaScript - Hexlet
- JavaScript - التعبير مقابل البيان - WebTunings
- تعبير وظيفة JavaScript مقابل إعلان المبتدئين - مادة Dev
- الفرق بين التعبير والبيان في جافا سكريبت
- التعبير في JavaScript | بيان في JavaScript - Sathelli Srikanth
⬆ العودة إلى الأعلى
8. iife والوحدات النمطية ومساحات الأسماء
مع إدخال وحدات ES6 ، انخفض دور IIFEs في نطاق العزلة لكنها لا تزال ذات صلة.
مرجع
- Iife - MDN
- الشكل - MDN
- مساحة الاسم - MDN
مقالات
- إتقان تعبيرات الوظيفة المطلعة على الفور-تشاندرا جانداماراجو
- استدعى JavaScript على الفور تعبير الوظيفة - JavaScriptTutorial.net
- هل تجعل وحدات ES6 حالة Iifes عفا عليها الزمن؟
- تمهيدي مدته 10 دقائق إلى وحدات JavaScript ، وتنسيقات الوحدة ، وعمليات اللوائح النمطية وحالات الوحدة النمطية - Jurgen Van de Moere
- الوحدات النمطية - استكشاف JS
- الوحدات النمطية: كاريكاتير عميق-لين كلارك
- فهم وحدات ES6 - كريج باكلر
- نظرة عامة على وحدات ES6 في JavaScript - Brent Graham
- وحدات ES6 في العمق - نيكولاس بيفاكوا
- وحدات ES6 ، Node.js و The Michael Jackson Solution - Alberto Gimeno
- وحدات JavaScript: دليل المبتدئين - Preethi Kasireddy
- باستخدام وحدات JavaScript على الويب - BeNens Addy Osmani & Mathias
- Iife: تعبيرات الوظائف التي تم استدعاؤها على الفور - parwinder
- Bundlers وحدة JavaScript - Vanshu Hassija
مقاطع الفيديو
- تعبير الوظيفة المحتج على الفور - Beau يعلم JavaScript - FreeCodecamp
- فهم JavaScript Iife - شيو نارايان
- وحدات JavaScript: ES6 استيراد وتصدير - كايل روبنسون
- ES6 - الوحدات النمطية - ريان كريستيان
- وحدات ES6 في العالم الحقيقي - سام ثوروغود
- وحدات ES6 - TempleCoding
- JavaScript Iife (تعبيرات الوظيفة التي تم استدعاؤها على الفور) - ستيف غريفيث
⬆ العودة إلى الأعلى
9. قائمة انتظار الرسائل وحلقة الحدث
تعد حلقة الحدث جزءًا مهمًا من نموذج التزامن في JavaScript ، مما يضمن سلوك عدم الحظر من خلال معالجة المهام بطريقة غير متزامنة. إن فهم كيفية تفاعله مع قائمة انتظار الرسائل والمخططات الدقيقة هو مفتاح إتقان سلوك JavaScript.
مقالات
- أوضحت حلقة حدث JavaScript - Anoop Raveendran
- حلقة حدث JavaScript: شرح-Erin Sweson-Healey
- فهم JS: حلقة الحدث - ألكساندر كوندوف
- حلقة حدث JavaScript - Flavio Copes
- المهام ، microtasks ، قوائم الانتظار والجداول الزمنية - جيك أرشيبالد
- تصور حلقة حدث JavaScript مع تشبيه مطعم البيتزا - Priyansh Jain
- JavaScript تصور: حلقة الحدث - ليديا هالي
- setTimeout vs setimmediate في JavaScript - Navneet Singh
- فهم وتحسين حلقة حدث JavaScript - Xiuer Old
مقاطع الفيديو
- ما هي حلقة الحدث على أي حال؟ | JSconf EU - Philip Roberts
- حلقة حدث JavaScript - تبسيط ComScixy
- أنا عالق في حلقة حدث - فيليب روبرتس
- في الحلقة - جيك أرشيبالد | jsconf.asia 2018
- حلقة الحدث Desmitificando El (الإسبانية)
- عوامل الاسترجاعات ، Sincrono ، Assíncrono E Event Loop (PT-BR)
- حلقة حدث JavaScript: كيف تعمل ولماذا يهم في 5 دقائق - James Q Quick
⬆ العودة إلى الأعلى
10.
مقالات
- JavaScript Settimeout - كل ما تحتاج إلى معرفته
- setTimeout و setInterval - javaScript.info
- لماذا لا تستخدم setInterval - Akanksha Sharma
- setTimeout vs setinterval - develoger
- باستخدام requestAnimationFrame - كريس كويير
- فهم JavaScript's requestanimationFrame () - JavaScript Kit
- معالجة الفواصل الزمنية في JavaScript - Amit Merchant
- Debounce - كيفية تأخير وظيفة في JavaScript - Ondrej Polesny
مقاطع الفيديو
- JavaScript: كيف يعمل SetTimeOut و SetInterval - كتل الترميز الهند
- مشاكل الثقة مع setTimeOut () - أكشاي سايني
- setTimeout و SetInterval في JavaScript - TechSith
- TIMERS JavaScript - ستيف غريفيث
- أوضح JavaScript Settimeout و Setinterval - ثيودور أندرسون
⬆ العودة إلى الأعلى
11. محركات جافا سكريبت
مقالات
- هل تقوم JavaScript بتجميع اللغة أو المفسرة؟
- محركات JavaScript - Jen Looper
- فهم كيفية ترجمة محرك Chrome V8 JavaScript إلى رمز الجهاز - Droidhead
- فهم V8's Bytecode - Franziska Hinkelmann
- تاريخ موجز لمحرك V8 JavaScript من Google - كلير سميث
- JavaScript Essentials: لماذا يجب أن تعرف كيف يعمل المحرك - Rainer Hahnekamp
- أساسيات محرك JavaScript: الأشكال وذاكرة التخزين المؤقت المضمنة
- أساسيات محرك JavaScript: تحسين النماذج الأولية
- كيف يعمل V8 على تحسين عمليات المصفوفة
- JavaScript Internals: JavaScript Engine ، Phickt-Time Environment و SetTimeout Web API-Rupesh Mishra
مقاطع الفيديو
- محركات JavaScript: The Good Parts ™ - Mathias Bynens & Benedikt Meurer
- JS Engine مكشوف بنية V8 من Google | Namaste JavaScript EP. 16 - أكشاي سيني
- كيف يتم تنفيذ رمز JavaScript؟ كيف تعمل JavaScript خلف الكواليس
- فهم محرك V8 JavaScript - محادثات FreeCodecamp
- JavaScript Under the Hood - JavaScript Engine نظرة عامة
- Arindam Paul - JavaScript VM Internals و EventLoop و Async و Scopechains
⬆ العودة إلى الأعلى
12
مقالات
- البرمجة مع JS: عمليات bitwise - ألكساندر كوندوف
- باستخدام مشغلي JavaScript Bitwise في الحياة الحقيقية - إيان م
- مشغلات JavaScript Bitwise - W3Resource
- مشغلو bitwise في JavaScript - جو تشا
- تمهيدي شامل على الحساب الثنائي ومشغلي bitwise في JavaScript - Paul Brown
- كيف يمكنني فهم عملية bitwise في JavaScript؟
مقاطع الفيديو
- مشغلات JavaScript Bitwise - البرمجة مع Mosh
- مشغلو bitwise ولماذا نستخدمهم - أليكس هايت
- مشغلات JS bitwise والأرقام الثنائية - Steve Griffith - prof3ssorst3v3
- الغوص العميق في النقط والملفات و Arraybuffers - Steve Griffith - Prof3SsorSt3v3
⬆ العودة إلى الأعلى
13. دوم وأشجار التصميم
مرجع
- نموذج كائن المستند (DOM) - MDN
كتب
- جافا سكريبت البليغ ، الطبعة الثالثة: الفصل. 14 - نموذج كائن المستند
مقالات
- كيفية فهم وتعديل DOM في JavaScript - Tania Rascia
- ما هو نموذج كائن المستند ، ولماذا يجب أن تعرف كيفية استخدامه - ليوناردو مالدونادو
- تعليمي JavaScript DOM مع مثال - Guru99
- ما هو دوم؟ - كريس كويير
- اجتياز DOM مع JavaScript - Zell Liew
- شجرة دوم
- كيفية اجتياز DOM في JavaScript - Vojislav Grujić
- عرض الأشجار - Ilya Grigorik
- ما هو بالضبط دوم؟
- جافا سكريبت دوم
- اجتياز DOM مع JavaScript - Steve Griffith (YouTube)
مقاطع الفيديو
- JavaScript DOM - NET NINJA
- دورة JavaScript Dom Crash - Traversy Media
- طرق معالجة JavaScript DOM - Web Dev مبسطة
- طرق javaScript DOM Traversal - Web Dev مبسطة
⬆ العودة إلى الأعلى
14. المصانع والفصول
مقالات
- كيفية استخدام الفصول في JavaScript - Tania Rascia
- فصول JavaScript - تحت الغطاء - ماجد
- جافا سكريبت أفضل مع ES6 ، حزب العمال. II: غوص عميق في فصول - Peleke Sengstacke
- فهم نمط تصميم المصنع في JavaScript العادي - Aditya Agarwal
- وظائف المصنع في JavaScript - Josh Miller
- نمط المصنع في JS ES6 - SNSTSDEV
- وظيفة فئة VS Factory: استكشاف الطريق إلى الأمام - Cristi Salcescu
- كيف تعمل فصول ES6 حقًا وكيفية بناء روبرت جروس
- فهم
super
في جافا سكريبت - دليل سهل لفهم الفصول في JavaScript
مقاطع الفيديو
- وظائف مصنع JavaScript - البرمجة مع Mosh
- وظائف المصنع في JavaScript - وظيفة ممتعة ممتعة
- مصانع وظيفة جافا سكريبت - تشفير تشان
⬆ العودة إلى الأعلى
15. هذا ، اتصل ، تطبيق وربط
مرجع
- Call () - MDN
- BIND () - MDN
- تطبيق () - MDN
مقالات
- Call Call () ، تطبيق () و BIND () في JavaScript - Aniket Kudale
- تعتبر أساليب JavaScript و Call و Bind ضرورية لمحترفي JavaScript - Richard Bovell
- JavaScript: Call () ، تطبيق () و bind () - Omer Goldberg
- الفرق بين المكالمة / تطبيق / ربط - إيفان سيفريم
- ما هو المكالمة ، تطبيق ، ربط في JavaScript - ريتيك
- إتقان "هذا" في JavaScript: عمليات الاسترجاعات و BIND () ، تطبيق () ، Call () - Michelle Gienow
- تطبيق JavaScript و Call و Bind من خلال استضافة Cookout - Kevin Kononenko
- كيف ومتى تستخدم الربط والاتصال والتطبيق في JavaScript - Eigen x
- اسمحوا لي أن أشرح لك ما
this
. (JavaScript) - Jason Yu - فهم الكلمة الرئيسية "هذا" في جافا سكريبت - بافان
- كيفية فهم الكلمة الرئيسية هذا والسياق في JavaScript-Lukas Gisder-Dubé
- ما هيك هذا في جافا سكريبت؟ - هريديش شارما
- هذا وربط في JavaScript - براين باربور
- 3 تقنيات للحفاظ على عقلتك باستخدام "هذا" في جافا سكريبت - كارل
- إتقان JavaScript "هذه" الكلمة " - Aakash Srivastav
- هذا الارتباط في JavaScript - 4. ملزمة جديدة - Spyros Argalias
- مقدمة سريعة لـ "هذا" في جافا سكريبت - ناتالي سميث
- محادثة مع الكلمة الرئيسية "هذا" في جافا سكريبت - كارين إفيريان
- ما هي Call () ، تطبيق () و bind () في JavaScript - Amitav Mishra
- فهم "هذا" الربط في JavaScript - Yasemin Cidem
- أفضل 7 أسئلة صعبة من "هذه الكلمة"
مقاطع الفيديو
- جافا سكريبت ، تقدم وربط - TechSith
- تطبيقات JavaScript العملية للاتصال والتطبيق والربط - TechSith
- JavaScript (الاتصال ، ربط ، تطبيق) - AATMA فضولي
- فهم الوظائف و "هذا" في عالم ES2017 - برايان هيوز
- ربط وهذا - إنشاء الكائن في JavaScript - Funfunfunction
- أساليب وظيفة JS Call () ، تطبيق () ، و bind () - ستيف غريفيث
- اتصل وتطبيق وربط طريقة في JavaScript - Akshay Saini
- . [أسئلة مقابلة JavaScript (الاتصال ، ربط وتطبيق) - Polyfills ، الإخراج ، الربط الصريح - المبرمج على جانب الطريق] (https://youtu.be/vkmuoktydau؟si=SDVLZ8FBMEPHPXJS)
⬆ العودة إلى الأعلى
16. جديد ، مُنشئ ، مثيل والحالات
مقالات
- JavaScript للمبتدئين: المشغل "الجديد" - براندون موريلي
- دعونا نزيل الغموض عن الكلمة الرئيسية "الجديدة" لـ JavaScript - سينثيا لي
- مُنشئ ، مشغل "جديد" - JavaScript.info
- فهم منشئو JavaScript - Faraz Kelhini
- استخدم وظائف المنشئ - OpenClassrooms
- ما وراء
typeof
و instanceof
: تبسيط اختبارات النوع الديناميكي - الدكتور Axel Rauschmayer - الوظيفة والكائن ، مثيلات بعضها البعض - مخاطر كيرو
- JavaScript مثيل Ofrator
⬆ العودة إلى الأعلى
17. النموذج الأولي وراثي وسلسلة النموذج الأولي
مرجع
- الميراث وسلسلة النموذج الأولي - MDN
مقالات
- JavaScript: النموذج الأولي مقابل الفئة - فالنتين بارسي
- أساسيات محرك JavaScript: تحسين النماذج الأولية - Mathias Benens
- النموذج الأولي JavaScript - NC Patro
- النماذج الأولية في JavaScript - Rupesh Mishra
- النموذج الأولي في JavaScript: إنه غريب ، ولكن إليك كيفية عمله - Pranav Jindal
- فهم JavaScript: النموذج الأولي والميراث - ألكساندر Kondov
- فهم فصول (ES5) والميراث النموذجي في JavaScript - Hridayesh Sharma
- النموذج الأولي ، البروتو والميراث النموذجي في JavaScript - Varun Dey
- الميراث النموذجي - JavaScript.info
- كيفية العمل مع النماذج الأولية والميراث في JavaScript - تانيا راسكيا
- النماذج الأولية JavaScript والميراث - Arnav Aggarwal
- أوضح ميراث JavaScript النموذجي باستخدام CSS - Nash Vail
- الميراث النموذجي في جافا سكريبت - جانيس ريدمان
- إزالة الغموض عن فئات ES6 والميراث النموذجي - Neo ighodaro
- مقدمة للميراث النموذجي - داراني جاياكانثان
- دعونا نبني الميراث النموذجي في JS-Var-Che
- الكائنات والنماذج الأولية والفئات في JavaScript - Atta
- العالم السحري لنماذج جافا سكريبت - بيلين
- فهم الميراث النموذجي في جافا سكريبت - لورانس النسور
- الكائنات والنماذج الأولية في جافا سكريبت - إيرينا بوبوفا
مقاطع الفيديو
- الميراث النموذج الأولي JavaScript - Avelx
- شرح الميراث النموذج الأولي JavaScript Pt. أنا - Techsith
- شرح الميراث النموذج الأولي JavaScript Pt. II - Techsith
- أوضح الميراث النموذج الأولي JavaScript - كايل روبنسون
- JavaScript المتقدم - الميراث النموذجي في دقيقة واحدة
- نظرة عامة على فئات جافا سكريبت الكلاسيكية والميراث النموذجي - الخماسي
- كائن موجه JavaScript - النموذج الأولي - النينجا الشبكي
- النموذج الأولي في JavaScript - Kudvenkat
- JavaScript باستخدام النماذج الأولية - O'Reilly
- دليل المبتدئين للنموذج الأولي لـ JavaScript - Tyler McGinnis
- النماذج الأولية في JavaScript - P5.JS Tutorial - قطار الترميز
كتب
- أنت لا تعرف JS ، الإصدار الأول: هذه النماذج الأولية - كايل سيمبسون
- مبادئ JavaScript الموجهة للكائنات - نيكولاس سي Zakas
⬆ العودة إلى الأعلى
18. object.create و Object.assign
مرجع
- Object.Create () - MDN
- Object.assign () - MDN
مقالات
- كائن
- Object.create (): الطريقة الجديدة لإنشاء كائنات في JavaScript - Rob Gravelle
- الميراث الأساسي مع object.create - Joshua Clanton
- Object.Create () في JavaScript - Geeksforgeeks
- فهم الفرق بين object.create () والمشغل الجديد - جوناثان فوكسلاند
- إنشاء كائن JavaScript: الأنماط وأفضل الممارسات - جيف موت
- JavaScript Hasownproperty: أداة فحص خاصية قوية
- التعامل مع الكائنات في JavaScript مع Object.Assign و Object.Keys و HasownProperty
- نسخ الكائنات في جافا سكريبت - أورينامي أولاتونجي
- JavaScript: Object.assign () - Thiago S. Adriano
- كيفية تعميق استنساخ كائن JavaScript - يتساقط فلافيو
- object.create (): متى ولماذا الاستخدام - vzing
مقاطع الفيديو
- أوضح كائن
- Object.Assign () طريقة - TechSith
⬆ العودة إلى الأعلى
19. الخريطة ، تقليل ، تصفية
مقالات
- البرمجة الوظيفية JavaScript - الخريطة ، تصفية وتقليل - Bojan Gvozderac
- تعلم الخريطة والتصفية والتقليل في جافا سكريبت - جواو ميغيل كونها
- خريطة JavaScript ، تقليلها ، وتصفية - دان مارتينسين
- كيفية استخدام الخريطة والتصفية والتقليل في JavaScript - Peleke Sengstacke
- JavaScript - تعلم سلسلة خريطة وتصفية وتقليل - براندون موريلي
- بنية بيانات JavaScript مع خريطة ، تقليل ، تصفية و ES6 - Deepak Gupta
- فهم الخريطة والتصفية والتقليل في جافا سكريبت - لوك جرويجس
- البرمجة الوظيفية في JS: MAP ، مرشح ، تقليل (Pt. 5) - Omer Goldberg
- JavaScript: خريطة ، مرشح ، تقليل - وليام س. فنسنت
- وظائف السهم: الدهون وبناء جملة موجزة في جافا سكريبت - كايل بينيل
- جافا سكريبت: وظائف السهم للمبتدئين - براندون موريلي
- عندما (ولماذا) يجب عليك استخدام وظائف سهم ES6 - وعندما لا ينبغي لك - سينثيا لي
- JavaScript - تعلم وفهم وظائف السهم - براندون موريلي
- (JavaScript) => وظائف السهم - SIGU
- javaScript.reduce () - بول أندرسون
- لماذا يجب أن تحل محل Foreach بخريطة وتصفية في JavaScript - Roope Hakulinen
- تبسيط JavaScript - استخدام .map () و .reduce () و .filter () - Etienne Talbot
- تم شرح طريقة تقليل JavaScript من خلال اتباع نظام غذائي - Kevin Kononenko
- الفرق بين الخريطة والتصفية والتقليل في جافا سكريبت - أميراتا خوداباراست
- map⇄filter⇄reduce↻ - Ashay Mandwarya
- العثور على طريقك مع .map () - براندون فوزنويكز
- كيفية كتابة الخريطة الخاصة بك وتصفية وتقليل الوظائف في JavaScript - Hemand Nair
- كيفية معالجة المصفوفات في JavaScript - Bolaji Ayodeji
- كيفية تبسيط قاعدة الشفرة الخاصة بك باستخدام MAP () ، تقليل () ، و Filter () في JavaScript - Alex Permyakov
- .map () و .filter () و .reduce () - Andy Pickle
- خريطة/مرشح/تقليل دورة التصادم - كريس أشارد
- خريطة ، تصفية وتقليل - الرسوم المتحركة - معلم جافا سكريبت
- خريطة ، مرشح ، تقليل ، تكرار المصفوفات الأخرى التي يجب أن تعرف أن تصبح معالج خوارزميات - ماورو بونو
- كيفية استخدام JavaScript's .map و .filter و .reduce - Avery Duffin
- اختبار أداء JavaScript - لكل VS لكل VS (خريطة ، تقليل ، مرشح ، Find) - Deepak Gupta
- باستخدام .map () ، .filter () و .reduce () بشكل صحيح - Sasanka kudagoda
- إتقان طريقة تقليل JavaScript ✂ - SanderDebr
- خريطة JavaScript - كيفية استخدام وظيفة JS .map () (طريقة الصفيف) - FreeCodecamp
مقاطع الفيديو
- خريطة وتصفية وتقليل - ليديا هالي
- خريطة وتصفية وتقليل - أكشاي سايني
- JavaScript الوظيفية: خريطة ، foreach ، تقليل ، مرشح - ثيودور أندرسون
- JavaScript Array Superwors: Map ، Filter ، تقليل (الجزء الأول) - Michael Rosata
- JavaScript Array Superwors: MAP ، Filter ، تقليل (الجزء 2) - Michael Rosata
- وظائف JavaScript أعلى ترتيب - مرشح ، خريطة ، فرز وتقليل - epicop
- [أساليب الصفيف 2/3] .filter + .map + .Reduce - Codewithnick
- وظائف السهم في JavaScript - ماذا ولماذا وكيف - وظيفة ممتعة ممتعة
- البرمجة الوظيفية التعلم مع JavaScript - Anjana Vakil - Jsunconf
- الخريطة - Parte 2 JavaScript - وظيفة ممتعة ممتعة
- Reduce basics - Part 3 of FP in JavaScript - Fun Fun Function
- Reduce Advanced - Part 4 of FP in JavaScript - Fun Fun Function
- reduce Array Method | JavaScript Tutorial - Florin Pop
- map Array Method | JavaScript Tutorial - Florin Pop
- Different array methods in 1 minute | Midudev (Spanish)
⬆ Back to Top
20. Pure Functions, Side Effects, State Mutation and Event Propagation
مقالات
- Javascript and Functional Programming — Pure Functions — Omer Goldberg
- Master the JavaScript Interview: What is a Pure Function? — Eric Elliott
- JavaScript: What Are Pure Functions And Why Use Them? — James Jeffery
- Pure functions in JavaScript — @nicoespeon
- Functional Programming: Pure Functions — Arne Brasseur
- Making your JavaScript Pure — Jack Franklin
- Arrays, Objects and Mutations — Federico Knüssel
- The State of Immutability — Maciej Sikora
- Hablemos de Inmutabilidad — Kike Sanchez
- How to deal with dirty side effects in your pure functional JavaScript — James Sinclair
- Preventing Side Effects in JavaScript — David Walsh
- JavaScript: Pure Functions — William S. Vincent
- Functional programming paradigms in modern JavaScript: Pure functions — Alexander Kondov
- Understanding Javascript Mutation and Pure Functions — Chidume Nnamdi
- Functional-ish JavaScript — Daniel Brain
- Event Propagation — MDN
- Event Propagation — Bubbling and capturing
مقاطع الفيديو
- Pure Functions — Hexlet
- Pure Functions - Functional Programming in JavaScript — Paul McBride
- JavaScript Pure Functions — Seth Alexander
- JavaScript Pure vs Impure Functions Explained — Theodore Anderson
- Pure Functions - Programação Funcional: Parte 1 - Fun Fun Function
- Event Propagation - JavaScript Event Bubbling and Propagation - Steve Griffith
⬆ Back to Top
21. Closures
مرجع
- Closures — MDN
- Closure — JavaScript.Info
مقالات
- I never understood JavaScript closures — Olivier De Meulder
- Understand JavaScript Closures With Ease — Richard Bovell
- Understanding JavaScript Closures — Codesmith
- Understand Closures in JavaScript — Brandon Morelli
- A simple guide to help you understand closures in JavaScript — Prashant Ram
- Understanding JavaScript Closures: A Practical Approach — Paul Upendo
- Understanding JavaScript: Closures — Alexander Kondov
- How to use JavaScript closures with confidence — Léna Faure
- JavaScript closures by example — tyler
- JavaScript — Closures and Scope — Alex Aitken
- Discover the power of closures in JavaScript — Cristi Salcescu
- Getting Closure — RealLifeJS
- Closure, Currying and IIFE in JavaScript — Ritik
- Understanding Closures in JavaScript — Sukhjinder Arora
- A basic guide to Closures in JavaScript — Parathan Thiyagalingam
- Closures: Using Memoization — Brian Barbour
- A Brief Introduction to Closures and Lexical Scoping in JavaScript — Ashutosh K Singh
- Demystify Closures — stereobooster
- Scopes and Closures - JavaScript Concepts — Agney Menon
- Understanding Closures in JavaScript — Matt Popovich
- whatthefuck.is · A Closure - Dan Abramov
- Closures in JavaScript can... - Brandon LeBoeuf
- Do you know Closures - Mohamed Khaled
مقاطع الفيديو
- JavaScript The Hard Parts: Closure, Scope & Execution Context - Codesmith
- Namaste Javascript by Akshay Saini
- Javascript Closure — techsith
- Closures — Fun Fun Function
- Closures in JavaScript — techsith
- JavaScript Closures 101: What is a closure? — JavaScript Tutorials
- Closures — freeCodeCamp
- JavaScript Closures — CodeWorkr
- Closures in JS - Akshay Saini
- CLOSURES en JavaScript: Qué son y cómo funcionan - Carlos Azaustre
- Learn Closures In 7 Minutes - Web Dev Simplified
⬆ Back to Top
22. High Order Functions
كتب
- Eloquent JavaScript, 3rd Edition: Ch. 5 - Higher-order Functions
مقالات
- Higher-Order Functions in JavaScript — M. David Green
- Higher Order Functions: Using Filter, Map and Reduce for More Maintainable Code — Guido Schmitz
- First-class and Higher Order Functions: Effective Functional JavaScript — Hugo Di Francesco
- Higher Order Functions in JavaScript — John Hannah
- Just a reminder on how to use high order functions — Pedro Filho
- Understanding Higher-Order Functions in JavaScript — Sukhjinder Arora
- Higher Order Functions - A pragmatic approach — emmanuel ikwuoma
مقاطع الفيديو
- JavaScript Higher Order Functions & Arrays — Traversy Media
- Higher Order Functions — Fun Fun Function
- Higher Order Functions in Javascript — Raja Yogan
- Higher Order Iterators in JavaScript — Fun Fun Function
- Higher Order Functions in JavaScript — The Coding Train
- Part 1: An Introduction to Callbacks and Higher Order Functions - Codesmith
- Part 2: Understanding Why We Need Higher Order Functions - Codesmith
- Higher-Order Functions ft. Functional Programming - Akshay Saini
⬆ Back to Top
23. Recursion
مقالات
- Recursion in JavaScript — Kevin Ennis
- Understanding Recursion in JavaScript — Zak Frisch
- Learn and Understand Recursion in JavaScript — Brandon Morelli
- Recursion in Functional JavaScript — M. David Green
- Programming with JS: Recursion — Alexander Kondov
- Anonymous Recursion in JavaScript — simo
- Recursion, iteration and tail calls in JS — loverajoel
- What is Recursion? A Recursive Function Explained with JavaScript Code Examples — Nathan Sebhastian
- Intro to Recursion — Brad Newman
- Accio Recursion!: Your New Favorite JavaScript Spell — Leanne Cabey
- Recursion Explained (with Examples) — Christina
مقاطع الفيديو
- Recursion In JavaScript — techsith
- Recursion — Fun Fun Function
- Recursion and Recursive Functions — Hexlet
- Recursion: Recursion() — JS Monthly — Lucas da Costa
- Recursive Function in JavaScript — kudvenkat
- What on Earth is Recursion? — Computerphile
- Javascript Tutorial 34: Introduction To Recursion — codedamn
- Recursion, Iteration, and JavaScript: A Love Story | JSHeroes 2018 — Anjana Vakil
- Recursion crash course - Colt Steele
- What Is Recursion - In Depth - Web Dev Simplified
⬆ Back to Top
24. Collections and Generators
مرجع
مقالات
- ES6 In Depth: Collections — Jason Orendorff
- ES6 Collections: Using Map, Set, WeakMap, WeakSet — Kyle Pennell
- ES6 WeakMaps, Sets, and WeakSets in Depth — Nicolás Bevacqua
- Map, Set, WeakMap and WeakSet — JavaScript.Info
- Maps in ES6 - A Quick Guide — Ben Mildren
- ES6 — Set vs Array — What and when? — Maya Shavin
- ES6 — Map vs Object — What and when? — Maya Shavin
- Array vs Set vs Map vs Object — Real-time use cases in Javascript (ES6/ES7) — Rajesh Babu
- How to create an array of unique values in JavaScript using Sets — Claire Parker-Jones
- What You Should Know About ES6 Maps — Just Chris
- ES6 Maps in Depth — Nicolás Bevacqua
- What are JavaScript Generators and how to use them — Vladislav Stepanov
- Understanding JavaScript Generators With Examples — Arfat Salman
- The Basics of ES6 Generators — Kyle Simpson
- An Introduction to JavaScript Generators — Alice Kallaugher
مقاطع الفيديو
- JavaScript ES6 / ES2015 Set, Map, WeakSet and WeakMap — Traversy Media
- JavaScript ES6 / ES2015 - [11] Generators - Traversy Media
- The Differences between ES6 Maps and Sets — Steve Griffith
- Javascript Generators - THEY CHANGE EVERYTHING - ES6 Generators Harmony Generators — LearnCode.academy
⬆ Back to Top
25. Promises
مرجع
مقالات
- JavaScript Promises for Dummies ― Jecelyn Yeen
- Understanding promises in JavaScript — Gokul NK
- Master the JavaScript Interview: What is a Promise? — Eric Elliott
- An Overview of JavaScript Promises — Sandeep Panda
- How to use Promises in JavaScript — Prashant Ram
- Implementing Promises In JavaScript — Maciej Cieslar
- JavaScript: Promises explained with simple real life analogies — Shruti Kapoor
- Promises for Asynchronous Programming — Exploring JS
- JavaScript Promises Explained By Gambling At A Casino — Kevin Kononenko
- ES6 Promises: Patterns and Anti-Patterns — Bobby Brennan
- A Simple Guide to ES6 Promises — Brandon Morelli
- The ES6 Promises — Manoj Singh Negi
- ES6 Promises in Depth — Nicolás Bevacqua
- Playing with Javascript Promises: A Comprehensive Approach — Rajesh Babu
- How to Write a JavaScript Promise — Brandon Wozniewicz
- A Coding Writer's Guide: An Introduction To ES6 Promises — Andrew Ly
- Understanding Promises in JavaScript — Chris Noring
- Converting callbacks to promises — Zell Liew
- JavaScript Promises: Zero To Hero Plus Cheat Sheet — Joshua Saunders
- Promises - JavaScript concepts — Agney Menon
- Javascript
Promise
101 — Igor Irianto - Simplify JavaScript Promises — Sunny Singh
- The Lowdown on Promises — Aphinya Dechalert
- JavaScript Visualized: Promises & Async/Await — Lydia Hallie
- Promises in JavaScript — Peter Klingelhofer
- Best Practices for ES6 Promises — Basti Ortiz
- Lo que debemos saber de EScript 2020 — Kike Sanchez
- Promise Basics - javascript.info
- The Complete JavaScript Promise Guide
- Promise Chaining - javascript.info
مقاطع الفيديو
- Let's Learn ES6 - Promises — Ryan Christiani
- JavaScript ES6 / ES2015 Promises — Traversy Media
- Promises — Fun Fun Function
- Error Handling Promises in JavaScript — Fun Fun Function
- Promises Part 1 - Topics of JavaScript/ES6 — The Coding Train
- JavaScript Promise in 100 Seconds
- JavaScript Promise in 9 Minutes
- JavaScript Promises In 10 Minutes — Web Dev Simplified
- Promises | Ep 02 Season 02 - Namaste JavaScript - Akshay Saini
⬆ Back to Top
26. async/await
مرجع
- async/await — JavaScript.Info
كتب
- Eloquent JavaScript, 3rd Edition: Ch. 11 - Asynchronous Programming
- Exploring JS: Asynchronous Programming
مقالات
- Understanding async/await in Javascript — Gokul NK
- Asynchronous Javascript using async/await — Joy Warugu
- Modern Asynchronous JavaScript with async/await — Flavio Copes
- Asynchronous JavaScript: From Callback Hell to Async and Await — Demir Selmanovic
- Javascript — ES8 Introducing async/await Functions — Ben Garrison
- How to escape async/await hell — Aditya Agarwal
- Understanding JavaScript's async await — Nicolás Bevacqua
- JavaScript Async/Await: Serial, Parallel and Complex Flow — TechBrij
- From JavaScript Promises to Async/Await: why bother? — Chris Nwamba
- Flow Control in Modern JS: Callbacks to Promises to Async/Await — Craig Buckler
- How to improve your asynchronous Javascript code with async and await — Indrek Lasn
- Making Fetches Easy With Async Await — Mickey Sheridan
- 7 Reasons Why JavaScript Async/Await Is Better Than Plain Promises — Mostafa Gaafar
- Asynchronous Operations in JavaScript — Jscrambler
- JavaScript: Promises or async-await — Gokul NK
- Async / Await: From Zero to Hero — Zhi Yuan
- JavaScript Visualized: Promises & Async/Await — Lydia Hallie
- Making asynchronous programming easier with async and await — MDN
- JavaScript Async/Await Tutorial – Learn Callbacks, Promises, and Async/Await in JS by Making Ice Cream
- Better Than Promises - JavaScript Async/Await
مقاطع الفيديو
- Asynchronous JavaScript Crash Course
- Async + Await — Wes Bos
- Asynchrony: Under the Hood — Shelley Vohr
- async/await in JavaScript - What, Why and How — Fun Fun Function
- async/await Part 1 - Topics of JavaScript/ES8 — The Coding Train
- async/await Part 2 - Topics of JavaScript/ES8 — The Coding Train
- Complete Guide to JS Async & Await ES2017/ES8 — Colt Steele
- Tips for using async/await in JavaScript — James Q Quick
- JavaScript Async Await — Web Dev Simplified
- Promise async and await in javascript — Hitesh Choudhary
⬆ Back to Top
27. Data Structures
مقالات
- Data Structures in JavaScript — Thon Ly
- Algorithms and Data Structures in JavaScript — Oleksii Trekhleb
- Data Structures: Objects and Arrays ― Chris Nwamba
- Data structures in JavaScript — Benoit Vallon
- Playing with Data Structures in Javascript — Anish K.
- The Little Guide of Queue in JavaScript — Germán Cutraro
- All algorithms writing with JavaScript in the book 'Algorithms Fourth Edition'
- Collection of classic computer science paradigms in JavaScript
- All the things you didn't know you wanted to know about data structures
- JavaScript Data Structures: 40 Part Series — miku86
- Data Structures: Understanding Graphs — Rachel Hawa
- Data Structures Two Ways: Linked List (Pt 1) — Freddie Duffield
- Data Structures Two Ways: Linked List (Pt 2) — Freddie Duffield
- Graph Data Structures Explained in JavaScript — Adrian Mejia
مقاطع الفيديو
- Algorithms In Javascript | Ace Your Interview — Eduonix Learning Solutions
- Data Structures and Algorithms in JavaScript — freeCodeCamp
- Learning JavaScript Data Structures and Algorithms: Sorting — Packt Video
- JavaScript Data Structures: Getting Started — Academind
⬆ Back to Top
28. Expensive Operation and Big O Notation
مقالات
- Big O Notation in Javascript — César Antón Dorantes
- Time Complexity/Big O Notation — Tim Roberts
- Big O in JavaScript — Gabriela Medina
- Big O Search Algorithms in JavaScript — Bradley Braithwaite
- Algorithms in plain English: time complexity and Big-O Notation — Michael Olorunnisola
- An Introduction to Big O Notation — Joseph Trettevik
مقاطع الفيديو
- JavaScript: Intro to Big O Notation and Function Runtime — Eric Traub
- Essential Big O for JavaScript Developers — Dave Smith
- Big O Notation - Time Complexity Analysis — WebTunings
- Learn Big O Notation In 12 Minutes - Web Dev Simplified
- JavaScript Algorithms: Big-O Notation - Codevolution
- JavaScript Algorithms Crash Course: Learn Algorithms & "Big O" from the Ground Up! - Academind
- Big O Notation - Data Structures and Algorithms in Javascript - RoadSideCoder
⬆ Back to Top
29. Algorithms
مقالات
- Data Structures and Algorithms using ES6
- Algorithms and data structures implemented in JavaScript with explanations and links to further readings
- JS: Interview Algorithm
- Algorithms in JavaScript — Thon Ly
- JavaScript Objects, Square Brackets and Algorithms — Dmitri Grabov
- Atwood's Law applied to CS101 - Classic algorithms and data structures implemented in JavaScript
- Data Structures and Algorithms library in JavaScript
- Collection of computer science algorithms and data structures written in JavaScript
- Algorithms and Data Structures in JavaScript — Oleksii Trekhleb
مقاطع الفيديو
- ؟ JavaScript Algorithms - Codevolution
- ؟ Dynamic Programming - Learn to Solve Algorithmic Problems & Coding Challenges - FreeCodeCamp
- ؟ Data Structures and Algorithms in Javascript | DSA with JS - RoadsideCoder
- ؟ Javascript Algorithms + Data Structures - KodingKevin
- ؟ JavaScript Data Structures: Getting Started - Academind
- ؟ Algorithms and Data Structures - The Coding Train (Daniel Shiffman)
⬆ Back to Top
30. Inheritance, Polymorphism and Code Reuse
مرجع
- Inheritance in JavaScript — MDN
- Class inheritance, super — JavaScript.Info
مقالات
- Inheritance in JavaScript — Rupesh Mishra
- Simple Inheritance with JavaScript — David Catuhe
- JavaScript — Inheritance, delegation patterns and Object linking — NC Patro
- Object Oriented JavaScript: Polymorphism with examples — Knoldus Blogs
- Program Like Proteus — A beginner's guide to polymorphism in Javascript — Sam Galson
- Object-oriented JavaScript: A Deep Dive into ES6 Classes — Jeff Mott
- Unlocking the Power of Polymorphism in JavaScript: A Deep Dive
مقاطع الفيديو
- Inheritance in JavaScript — kudvenkat
- JavaScript ES6 Classes and Inheritance — Traversy Media
- Polymorphism in JavaScript — kudvenkat
⬆ Back to Top
31. Design Patterns
كتب
- Learning JavaScript Design Patterns — Addy Osmani
- Pro JavaScript Design Patterns — Ross Harmes and Dustin Diaz
مقالات
- JavaScript Design Patterns – Explained with Examples — Germán Cocca
- 4 JavaScript Design Patterns You Should Know — Devan Patel
- JavaScript Design Patterns – Beginner's Guide to Mobile Web Development — Soumyajit Pathak
- JavaScript Design Patterns — Akash Pal
- JavaScript Design Patterns: Understanding Design Patterns in JavaScript - Sukhjinder Arora
- All the 23 (GoF) design patterns implemented in Javascript — Felipe Beline
- The Power of the Module Pattern in JavaScript — jsmanifest
- Design Patterns for Developers using JavaScript pt. I — Oliver Mensah
- Design Patterns for Developers using JavaScript pt. II — Oliver Mensah
- Design patterns in modern JavaScript development
- Understanding Design Patterns: Iterator using Dev.to and Medium social networks! — Carlos Caballero
- JavaScript Design Patterns - Factory Pattern — KristijanFištrek
- JavaScript Design Pattern — Module Pattern - Factory Pattern — Moon
- Design Patterns: Null Object - Carlos Caballero
- Strategy Pattern - Francesco Ciulla
- Adapter Pattern - Francesco Ciulla
- The Power of Composite Pattern in JavaScript - jsmanifest
- In Defense of Defensive Programming - Adam Nathaniel Davis
- JavaScript Patterns Workshop — Lydia Hallie
مقاطع الفيديو
- JavaScript Design Patterns — Udacity
- JavaScript Patterns for 2017 — Scott Allen
⬆ Back to Top
32. Partial Applications, Currying, Compose and Pipe
كتب
- Functional-Light JavaScript: Ch. 3 - Managing Function Inputs — Kyle Simpson
مقالات
- Composition and Currying Elegance in JavaScript — Pragyan Das
- Functional JavaScript: Function Composition For Every Day Use — Joel Thoms
- Functional Composition: compose() and pipe() — Anton Paras
- Why The Hipsters Compose Everything: Functional Composing In JavaScript — A. Sharif
- A Gentle Introduction to Functional JavaScript pt III: Functions for making functions — James Sinclair
- Curry And Compose (why you should be using something like ramda in your code) — jsanchesleao
- Function Composition in JavaScript with Pipe — Andy Van Slaars
- Practical Functional JavaScript with Ramda — Andrew D'Amelio, Yuri Takhteyev
- The beauty in Partial Application, Currying, and Function Composition — Joel Thoms
- Curry or Partial Application? — Eric Elliott
- Partial Application in JavaScript — Ben Alman
- Partial Application of Functions — Functional Reactive Ninja
- Currying vs Partial Application — Deepak Gupta
- Partial Application in ECMAScript 2015 — Ragan Wald
- So You Want to be a Functional Programmer pt. I — Charles Scalfani
- So You Want to be a Functional Programmer pt. II — Charles Scalfani
- So You Want to be a Functional Programmer pt. III — Charles Scalfani
- So You Want to be a Functional Programmer pt. IV — Charles Scalfani
- So You Want to be a Functional Programmer pt. V — Charles Scalfani
- An introduction to the basic principles of Functional Programming — TK
- Concepts of Functional Programming in Javascript — TK
- An Introduction to Functional Programming Style in JavaScript — JavaScript Teacher
- A practical guide to writing more functional JavaScript — Nadeesha Cabral
- A simple explanation of functional pipe in JavaScript — Ben Lesh
مقاطع الفيديو
- Compose vs Pipe: Functional Programming in JavaScript — Chyld Studios
- JavaScript Functional Programing: Compose — Theodore Anderson
- Function Composition - Functional JavaScript — NWCalvank
- JavaScript Function Composition Explained — Theodore Anderson
- Let's code with function composition — Fun Fun Function
- Partial Application vs. Currying — NWCalvank
- JavaScript Partial Application — Theodore Anderson
- call, apply and bind method in JavaScript
⬆ Back to Top
33. Clean Code
مقالات
- Clean Code Explained – A Practical Introduction to Clean Coding for Beginners — freeCodeCamp
- Clean Code concepts adapted for JavaScript — Ryan McDermott
- Clean Code Practice: How to write clean code — Tirth Bodawala
- Function parameters in JavaScript Clean Code — Kevin Peters
- Keeping your code clean — Samuel James
- Best Practices for Using Modern JavaScript Syntax — M. David Green
- best practices for cross node/web development - Jimmy Wärting
- Writing Clean Code - Dylan Paulus
- Writing Clean Code and The Practice of Programming - Nityesh Agarwal
- Clean code, dirty code, human code - Daniel Irvine
- Practical Ways to Write Better JavaScript - Ryland G
- The Must-Know Clean Code Principles - Kesk on Medium
- The Clean Code Book - Robert C Martin
- How to use destructuring in JavaScript to write cleaner, more powerful code - freecodecamp
- Write Clean Code Using JavaScript Object Destructuring - Asel Siriwardena
- JavaScript Clean Coding Best Practices
مقاطع الفيديو
- ؟ JavaScript Pro Tips - Code This, NOT That
- ؟ Clean Code playlist - Beau teaches
- ؟ JavaScript Best Practices and Coding Conventions - Write Clean Code
- ؟ JavaScript Clean Code
- ؟ Tips On Learning How To Code
⬆ Back to Top
رخصة
This software is licensed under MIT License, See License for more information ©Leonardo Maldonado.