جافاسكربت (JavaScript®) (إختصاراً JS) هي لغة برمجة خفيفة، مُفسرة، وشيئيّة ذات دوال من الدرجة الأولى، وهي مشهورة خصوصاً بكونها لغة البرمجة النصيّة لصفحات الويب، لكنها تستعمل في بيئات أخرى غير المتصفحات مثل node.js أو Apache CouchDB. فهي لغة برمجة نصيّة ديناميكيّة مبنية على النماذج و متعددة النماذج، وهي تدعم نمطي البرمجة الحتمي (imperative) الوظيفي (functional). اقرأ المزيد عن جافا سكربت.

يختص هذا الجزء بالجافاسكربت كلغة برمجة، بغض النظر عن مواقع الويب أو البيئات التي يمكن لهاته اللغة أن تعمل عليها.  للمزيد من المعلومات حول الواجهات البرمجيّة الخاصة بمواقع الويب،  طالع DOM و الواجهات البرمجيّة للويب.

يسمى معيار الجافا سكربت ECMAScript. بدءً من عام 2012، جميع المتصفحات الحديثة تدعم بشكل كامل ECMAScript 5.1. المتصفحات القديمة تدعم على الأقل ECMAScript 3. في 17 يونيو 2015، تم نشر النسخة الرئيسيّة السادسة من ECMAScript. ويسمى هذا الإصدار رسمياً ECMAScript 2015، ولكن يشار إليه عادةً باسم ECMAScript 6 أو ES6. تشير هذه الوثائق إلى الإصدار الأحدث من اللغة، والذي هو ECMAScript 2018.

لا ينبغي الخلط بين الجافاسكربت ولغة البرمجة جافا. يعد كلاً من الأسمين "جافا" و "جافاسكربت" علامات تجاريّة مُسجلة لشركة أوراكل في الولايات المتحدة الأمريكيّة وغيرها من البلدان. كلتا اللغتين تملكان بنيّة كتابيّة مختلفة، ودلالة مختلفة، وكذلك استخدامات مختلفة.

دورات

تعلم البرمجة باستخدام الجافاسكربت من خلال الدورات والدروس الإرشاديّة التالية.

للمبتدئين

اطلع على قسم مواضيع تعلم الجافاسكربت إذا كنت ترغب بتعلم الجافاسكربت ولكنك لا تملك أي معرفة مسبقة بهاته اللغة أو بالبرمجة ككل. الوحدات المتوفرة هي:

الخطوات الأولى مع الجافاسكربت
تجيب هذه المقالة عن بعض الأسئلة الأساسيّة، مثل "ما هي الجافاسكربت؟"، "كيف تبدو هذه اللغة؟"، "ماذا بإمكانها أن تفعل؟"، بالإضافة إلى مناقشة بعض الميزات الأساسيّة للغة مثل المتغيّرات، السلاسل النصية، الأرقام، والمصفوفات.
البنى الكتليّة في اللغة
نكمل رحلتنا في تغطيّة المفاهيم الأساسية في لغة الجافاسكربت، ففي هذه المقالة قمنا بالتركيز على البنى الكتليّة الشائعة في اللغة مثل الجمل الشرطيّة، الحلقات، الدوال، والأحداث.

دليل لغة جافا سكربت

دليل اللغة
دليل أكثر تفصيلاً حول لغة الجافاسكربت، فهو موجه للذين يمتلكون معرفة مسبقة، سواءً بلغة الجافا سكربت، أو بلغات البرمجة الأخرى.

مقالات لذوي الخبرة المتوسطة

مقدمة إلى الكائنات
من المهم فهم البرمجة الشيئيّة في اللغة إذا أردت زيادة معرفتك والتمكن من كتابة شيفرة برمجيّة أكثر فعاليّة، من أجل ذلك قمنا بتوفير هذه الوحدة لك.
واجهات التصميم (جهة العميل) البرمجيّة
لن تستطيع العمل جيداً عند تطوير جهة المستخدم (client-side) باستخدام الجافاسكربت من دون تعلمك للواجهات البرمجيّة المتخصصة، فهي واجهات للتلاعب بأجزاء مختلفة من المُتصفِح ونظام التشغيل الذي يعمل عليه الموقع، أو حتى التلاعب بحقول بيانات مواقع أو خدمات أخرى. في هذه الوحدة سنستكشف ماهيّة هذه الواجهات، وكيف تستخدم بعض من أكثر تلك الواجهات شيوعاً والتي ستحتاجها غالباً في عملك.
نظرة عامة على الجافاسكربت
مقالة تقدم نظرة عامة للذين يظنون أنهم يعرفون الجافاسكربت.
هياكل بيانات الجافاسكربت
نظرة عامة على هياكل البيانات المتوفرة في اللغة.
عبارات المساواة والتطابق
توفر الجافاسكربت ثلاثة عمليات مساواة مختلفة: المساواة الصارمة باستخدام === والمساواة المتساهلة باستخدام == والدالة  Object.is().

مقالات متقدمة

الميراث وسلسلة النموذج الأولي
شرح الميراث القائم على النموذج الأولي الذي يساء فهمه على نطاق واسع.
الوضع الصارم
في الوضع الصارم (strict mode)، لا يمكنك استخدام أي متغيّر قبل تعريفه. فيعد الوضع الصارم البديل المحدود لـ ECMAScript 5، لأداء أسرع وأكثر سهولة في التنقيح.
مصفوفات الجافاسكربت المكتوبة
توفر مصفوفات الجافاسكربت المكتوبة (typed arrays) آلية للوصول إلى البيانات الثنائيّة.
إدارة الذاكرة
دورة حياة الذاكرة وجمع القمامة (garbage collection) في لغة الجافاسكربت.
نموذج التزامن وحلقة الحدث
تمتلك لغة الجافاسكربت نموذج تزامن قائم على مفهوم "حلقة الحدث (event loop)".

مرجع اللغة

تصفح مرجع لغة الجافاسكربت الشامل.

الكائنات القياسيّة
تعرف على الكائنات القياسيّة المبنيّة في اللغة Array، Boolean، Date، Error، Function، JSON، Math، Number، Object، RegExp، String، Map، Set، WeakMap، WeakSet، وغيرها الكثير.
التعابير والعمليات
تعلم المزيد حول وظيفة العمليات (operators) في الجافاسكربت instanceof، typeof، new, this، وغيرها الكثير.
الدوال
تعلم كيفيّة العمل مع الدوال في لغة الجافاسكربت لتطوير برمجياتك.

أدوات ومراجع

أدوات مفيدة لكتابة وتنقيح شيفرات الجافاسكربت.

أدوات مطورين فايرفوكس
أداة Scratchpad ،Web Console ،JavaScript Profiler ،Debugger، وغيرها الكثير.
صدفات الجافاسكربت
تسمح لك هذه الصدفات (shells) بالتجريب السريع لشيفرات الجافاسكربت.
أداة TogetherJS
التعاون يجعل الأمر سهلاً. بإضافة هذه الأداة لموقعك، سيتمكن المستخدمون من مساعدة بعضهم البعض على موقعك بشكل حي!
موقع Stack Overflow
الأسئلة الموسومة بالوسم "JavaScript" الموجودة على موقع Stack Overflow.
ملاحظات إصدار الجافاسكربت
تصفح سجل ميزات الجافاسكربت وحالة التقدم في التطوير.
أداة JSFiddle
قم بتعديل شيفرات الجافاسكربت، ولغة ترميز النص الفائق، وصفحات الأنماط الانسيابية واحصل على النتائج بشكل حي. استخدم موارد خارجيّة وتعاون مع أفراد فريقك على الأنترنت.
أداة Plunker
مجتمع على الإنترنت لإنشاء، والتعاون، ومشاركة أفكار تطوير الويب. قم بتعديل ملفات الجافاسكربت وغيرها من الملفات واحصل على النتائج بشكل حي.

Join the JavaScript community

Choose your preferred method for joining the discussion:

Document Tags and Contributors

 آخر مَن حدّثها: ahmadnourallah,