Show tasks
لغة جافا سكريبت
مقدمة
مقدّمة لجافا سكريبت
المراجع و المواصفات
محررات الأكواد
أدوات المطور
أساسيات جافا سكريبت
أهلاً، بالعالم!
Show an alert
Show an alert with an external script
بنية الشيفرة البرمجية
الوضع الصارم: النمط الحديث لكتابة الشيفرات
المتغيرات
العمل مع المتغيرات
كتابة الأسم بشكل صحيح
الثابت ذات الحرف الكبيره؟
أنماط البيانات
String quotes
التفاعل: alert ، prompt ، confirm
صفحة بسيطة
نوع التحويلات
العاملات الأساسية والرياضيات
نماذج postfix والبادئة
نتيجة التعيين
اكتب التحويلات
إصلاح الإضافة
المقارنات
المقارنات
التفريع الشرطي: if, '?'
if (نص يحتوي على صفر)
اسم جافا سكريبت
اظهر العلامة
قم بتحويل 'if' إلى '?'
قم بتحويل 'if..else' إلى '?'
العوامل المنطقية
ما نتيجة OR?
نتيجة التنبيهات التي بينها OR?
نتيحة AND?
نتيجة التنبيهات التي بينها AND?
نتيجة OR AND OR
فحص المدى بين
فحص المدى بالخارج
سؤال عن "if"
فحص تسجيل الدخول
عامل التحقق من الفراغ '??'
الحلقات التكرارية: while و for
آخر قيمة للحلقة
ما القيم التي ستعرضها الحلقة ؟
ما القيم التي ستعرض بواسطة الحلقة "for"?
قم بعرض الأرقام الزوجية داخل حلقة تكرارية
استبدل "for" ب "while"
تكرار حتى الإدخال الصحيح
اعرض الأرقام الأولية
جملة "switch"
أعد كتابة "switch" باستخدام "if"
حول "if" إلى "switch"
الدوال
هل "else" مطلوبة?
اعد كتابة الدالة باستخدام '?' أو '||'
دالة min(a, b)
دالة pow(x,n)
تعبيرات الدوال
أساسيات Arrow functions
اعد الكتابة باستخدام arrow functions
خواصّ جافا سكريبت
جودة الشِفرة
تصحيح الأخطاء في كروم
أسلوب كتابة الكود
اسلوب سيئ
التعليقات
كود النينجا
الاختبار الآلي لشيفرات جافا سكريبت باستخدام mocha
What's wrong in the test?
تعدد الأشكال
أساسيات الكائنات
الكائنات
أهلا ، كائن
تحقق من الفراغ
جمع خصائص الكائن
ضرب الخصائص الرقمية في 2
Object references and copying
جمع القمامة (Garbage Collection)
الدوال في الكائنات واستعمالها `this`
استخدام `this` في الكائن معرَّف باختصار عبر الأقواس
إنشاء آلة حاسِبة
التسلسل
الباني والعامل "new"
Two functions – one object
Create new Calculator
Create new Accumulator
التسلسل الاختياري (غير الإجباري) '.?'
الرمز (Symbol type)
تحويل الكائنات إلى قيم مفرده
أنواع البيانات
الأساليب البدائية للبيانات
هل يمكن أن أضيف خاصية نصية؟
الأعداد
جمع الأعداد من الزائر
لماذا 6.35.toFixed(1) == 6.3؟
كرر حتى يصبح المُدخَل عددًا
حلقة غير منتهية أحيانًا
رقم عشوائي من العدد الأدنى إلى الأقصى
قيمة صحيحة عشوائية من min إلى max
السلاسل النصية
المصفوفات
هل تم نسخ المصفوفه؟
معاملات المصفوفه.
استدعاء في سياق مصفوفه
اجمع الارقام المدخله
مجموعة فرعية قصوى
توابع المصفوفات (Array methods)
Tحوّل «border-left-width» إلى «borderLeftWidth»
نطاق ترشيح
نطاق ترشيح «كما هو»
الفرز بالترتيب التنازلي
نسخ المصفوفة وفرزها
أنشِئ آلة حاسبة يمكن توسعتها لاحقًا
خارطة بالأسماء
خارطة بالكائنات
فرز المستخدمين حسب أعمارهم
خلط المصفوفات
ما متوسّط الأعمار؟
ترشيح العناصر الفريدة في المصفوفة
انشاء مفاتيح خاصة بكائنات المصفوفة
Iterables
النوع Map (الخرائط) والنوع Set (الأطقم)
Filter unique array members
Filter anagrams
Iterable keys
النوع WeakMap والنوع WeakSet: الخرائط والأطقم ضعيفة الإشارة
Store "unread" flags
Store read dates
مفاتيح الكائنات وقيمها ومدخلاتها
مجموع الخاصيات
عدد الخاصيات
Destructuring assignment
Destructuring assignment
The maximal salary
النوع Date: التاريخ والوقت
إنشاء تاريخ
إظهار أيام الأسبوع
أيام الأسبوع الأوروبية
أي يومٍ من الشهر كان قبل عدة أيام؟
اليوم الأخير من الشهر؟
كم ثانية مرت اليوم؟
كم بقي عدد من الثواني حتى الغد؟
تنسيق التاريخ بشكل نسبي
الكائن json وكيفية استخدامه
تحويل الكائن لجيسون وإرجاعه مرة أخرى
استثناء المراجع لكائنات أخرى
العمل مع التوابع بشكل متقدم
التكرار و الحزمة
أجمع كل الأرقام إلي الرقم المُعطى
إحسب المضروب
أعداد فيبوناتشي
طباعة قائمة متصلة فردية
إطبع قائمة متصلة فردية بشكل عكسي
المُعاملات «البقية» ومُعامل التوزيع
نطاق المتغيرات، الإغلاق
هل تلتقط الدالة آخر التغييرات؟
أي من المُتغيرات متاح؟
هل المتغير مَرئي؟
إفادة «var» القديمة
الكائن العمومي Global object
كائن الدالة وتعبير الدالة المُسَمَّى
وضع و تقليل للعداد
إجمع عن طريق مجموعة عشوائية من الأقواس
تركيب جملة دالة جديدة "new Function"
الجدولة: المهلة setTimeout والفترة setInterval
Output every second
What will setTimeout show?
المزخرفات decorators والتمرير forwarding: التابعان call وapply
Spy decorator
Delaying decorator
Debounce decorator
Throttle decorator
ربط الدوالّ Function binding
Bound function as a method
Second bind
Function property after bind
Fix a function that loses "this"
Partial application for login
الحديث عن الدوال السهمية Arrow functions مرة أخرى
خصائص تكوين الكائنات
رايات الخصائص و واصفاتها
جالبات الخصائص وضابطاتها (Getters and Setters)
النماذج، الوراثة
الوراثة النموذجية (Prototypal inheritance)
العمل مع prototype
خوارزمية بحث
أين سيحدث التعديل؟
لماذا أصابت التخمة كِلا الهامسترين؟
الوراثة النموذجية -2-
Changing "prototype"
Create an object with the same constructor
النماذج البدائية Native prototypes
إضافة الدالة "f.defer(ms)" للدوال
إضافة الدالة المعدلة للدوال
أدوات النموذج والإستغناء عن الخاصية proto
إضافة الدالة toString إلى القاموس
الفرق بين الإستدعاءات
الأصناف (Classes)
الصيغة الأساسية للClass
أعد صياغة الclass
Class توريث ال
خطأ في إنشاء مثيل
ساعة ممتدة
الخواص والدوال الثابتة
فئة تمدد الكائن؟
الخواص والدوال الـ `private` و الـ `protected`
امتداد الـ `classes` المدمجة
فحص الأصناف عبر instanceof
Mixins
معالجة الأخطاء
التعامل مع الأخطاء، "try...catch"
Finally أم الكود فقط؟
الاخطاء المخصصة وتوسعة صنف Error
Inherit from SyntaxError
Promises, async/await
مقدمة: callbacks
Promise
Re-resolve a promise?
Delay with a promise
Animated circle with promise
الوعود Promises chaining
Promise: then versus catch
التعامل مع الأخطاء في الـ `promises`
خطأ في setTimeout
Promise API
Promisification
المهام الصغيرة
Async/await (غير المتزامن /الانتظار)
أعد الكتابة باستخدام متزامن / انتظار
أعد كتابة "rethrow" مع غير متزامن / انتظار
استدعاء غير متزامن من غير متزامن
الـGenerators ومواضيع متقدمة فى التكرار
المُنشِئات Generators
الـgenerator الشبه عشوائي
الـgenerators والتكرار الغير متزامن
الوحدات
مقدّمة إلى الوحدات
التصدير والاستيراد
الاستيراد الديناميكي
موضوعات متنوعة
الوسيط Proxy و الـReflect
Error on reading non-existent property
الوصول إلي array[-1]
Observable
الدالّة "Eval" لتنفيذ الشيفرة البرمجية
Eval-calculator
تقنية Currying
النوع المرجعي
فحص بناء الجملة
تفسير القيمة الخاصه بـ "this"
BigInt
Unicode, String internals
Browser: Document, Events, Interfaces
Document
بيئة المتصفح ومواصفاته
نموذج كائن المستند DOM
المشي في الـ DOM
اطفال ال DOM
سؤال الأشقاء
حدد كل الخلايا القطرية
Searching: getElement*, querySelector*
Search for elements
خصائص العقدة: النوع والعلامة والمحتويات
عد الأحفاد
ماذا يوجد في العقدة؟
تاج في تعليق
أين "الوثيقة" في التسلسل الهرمي؟
الصفات والخصائص
الحصول على الخاصية
اجعل الروابط الخارجية برتقالية
تعديل الوثيقة
createTextNode vs innerHTML vs textContent
Clear the element
Why does "aaa" remain?
Create a list
Create a tree from the object
Show descendants in a tree
Create a calendar
Colored clock with setInterval
Insert the HTML in the list
Sort the table
الأنماط والفصول
Create a notification
حجم العنصر والتمرير
What's the scroll from the bottom?
What is the scrollbar width?
Place the ball in the field center
The difference: CSS width versus clientWidth
أحجام النوافذ والتمرير
الإحداثيات
البحث عن إحداثيات النافذة للحقل
عرض ملاحظة بالقرب من العنصر
إظهار ملاحظة بالقرب من العنصر (مطلق)
ضع الملاحظة في الداخل (مطلق)
Introduction to Events
Introduction to browser events
Hide on click
Hide self
Which handlers run?
Move the ball across the field
Create a sliding menu
Add a closing button
Carousel
التدفق و الإلتقاط
تفويض الحدث
إخفاء الرسائل باستخدام التفويض
قائمة الشجرة
جدول قابل للفرز
سلوك التلميح
الإجراءات الافتراضية للمتصفح
Why "return false" doesn't work?
Catch links in the element
Image gallery
Dispatching custom events
أحداث الواجهة
أحداث الماوس
قائمة قابلة للتحديد
Moving the mouse: mouseover/out, mouseenter/leave
Improved tooltip behavior
"Smart" tooltip
Drag'n'Drop with mouse events
Slider
Drag superheroes around the field
Pointer events
Keyboard: keydown and keyup
Extended hotkeys
Scrolling
Endless page
Up/down button
Load visible images
Forms, controls
Form properties and methods
Add an option to select
Focusing: focus/blur
Editable div
Edit TD on click
Keyboard-driven mouse
Events: change, input, cut, copy, paste
Deposit calculator
Forms: event and method submit
Modal form
Document and resource loading
Page: DOMContentLoaded, load, beforeunload, unload
Scripts: async, defer
Resource loading: onload and onerror
Load images with a callback
Miscellaneous
Mutation observer
Selection and Range
Event loop: microtasks and macrotasks
مقالات إضافية
Frames and windows
Popups and window methods
Cross-window communication
The clickjacking attack
Binary data, files
ArrayBuffer, binary arrays
Concatenate typed arrays
TextDecoder and TextEncoder
Blob
File and FileReader
Network requests
Fetch
Fetch users from GitHub
FormData
Fetch: Download progress
Fetch: Abort
Fetch: Cross-Origin Requests
Why do we need Origin?
Fetch API
URL objects
XMLHttpRequest
Resumable file upload
Long polling
WebSocket
Server Sent Events
Storing data in the browser
Cookies, document.cookie
LocalStorage, sessionStorage
Autosave a form field
IndexedDB
الرسوم المتحركة
منحنى بيزير
CSS-animations
Animate a plane (CSS)
Animate the flying plane (CSS)
Animated circle
دائرة متحركة بواسطة ال callback
JavaScript animations
Animate the bouncing ball
Animate the ball bouncing to the right
Web components
From the orbital height
Custom elements
Live timer element
Shadow DOM
Template element
Shadow DOM slots, composition
Shadow DOM styling
Shadow DOM and events
Regular expressions
الأنماط والأعلام
فئات الأحرف
Unicode: flag "u" and class \p{...}
Anchors: string start ^ and end $
Regexp ^$
Multiline mode of anchors ^ $, flag "m"
Word boundary: \b
Find the time
التخطى, الرموز الخاصة
Sets and ranges [...]
Java[^script]
Find the time as hh:mm or hh-mm
Quantifiers +, *, ? and {n}
How to find an ellipsis "..." ?
Regexp for HTML colors
Greedy and lazy quantifiers
A match for /d+? d+?/
Find HTML comments
Find HTML tags
التقاط المجموعات
Check MAC-address
Find color in the format #abc or #abcdef
Find all numbers
Parse an expression
المرجعيات الخلفية في النمط: \ N و \ k <name>
التناوب (أو) |
البحث عن لغات البرمجة
البحث عن أزواج bbtag
البحث عن سلاسل الاقتباس
البحث عن العلامة الكاملة
Lookahead و lookbehind
البحث عن أعداد صحيحة غير سالبة
أدخل بعد المقدمة
التراجع الكارثي
علم ثابت "y" ، البحث في الموضع