| المفهوم | التعريف | مثال |
|---|---|---|
| JavaScript | لغة برمجة نصية تُضيف التفاعلية لصفحات الويب | console.log("hi") |
| ECMAScript | المعيار الرسمي الذي تتبعه JavaScript | ES6, ES2020... |
| Interpreted | لغة تُفسَّر وتُنفذ مباشرة بدون تصريف مسبق | ينفذها المتصفح فوراً |
| Node.js | بيئة تشغيل JavaScript خارج المتصفح | تطوير الخادم بـ JS |
| محرك JS | البرنامج داخل المتصفح الذي يُفسر الكود | V8 في Chrome |
جافاسكريبت (JavaScript) هي لغة برمجة نصية (Scripting Language) تعمل داخل المتصفح وتُضيف السلوك والتفاعلية لصفحات الويب. إذا كانت HTML هي الهيكل وCSS هي المظهر، فإن JavaScript هي العقل الذي يجعل الصفحة "تفكر" وتستجيب لأفعال المستخدم — الضغط على زر، ملء نموذج، تحديث بيانات بدون إعادة تحميل الصفحة.
ابتكرها برندان إيك عام 1995 في عشرة أيام فقط أثناء عمله في شركة Netscape، وكانت تُعرف بداية بـ Mocha ثم LiveScript قبل أن تُسمى JavaScript لأسباب تسويقية بحتة — رغم أنها لا علاقة لها بلغة Java. اليوم أصبحت JavaScript المعيار الرسمي المعتمد من ECMA الدولية تحت اسم ECMAScript، ويُشار للإصدارات الحديثة بـ ES6 وما بعده.
ما يميز JavaScript أنها لغة متعددة الاستخدامات: تعمل في المتصفح للتحكم في الصفحات (Client-Side)، وتعمل أيضاً على الخادم عبر بيئة Node.js لبناء تطبيقات كاملة (Server-Side)، وتُستخدم في بناء تطبيقات الجوال عبر React Native، وحتى في تطبيقات سطح المكتب عبر Electron. هذا الانتشار الهائل يجعلها من أكثر اللغات طلباً في سوق العمل.
خصائصها الأساسية: لغة مُفسَّرة (Interpreted) لا تحتاج تصريفاً (Compilation) قبل التشغيل، ديناميكية النوع (Dynamically Typed) أي لا تحتاج تحديد نوع المتغير مسبقاً، وتدعم البرمجة الكائنية والوظيفية معاً. كل متصفح حديث (Chrome, Firefox, Safari, Edge) يحتوي على محرك JavaScript مدمج (مثل V8 في Chrome) يُفسر وينفذ الكود مباشرة.
| 1 | <!-- تضمين جافاسكريبت داخل صفحة HTML --> |
| 2 | <script> |
| 3 | console.log("مرحباً من جافاسكريبت!"); |
| 4 | </script> |
| 5 | |
| 6 | <!-- أو ربط ملف خارجي --> |
| 7 | <script src="app.js"></script> |
مثال 1: أول كود جافاسكريبت
| 1 | // أول سطر جافاسكريبت في حياتك |
| 2 | console.log("مرحباً بالعالم!"); |
| 3 | |
| 4 | // جافاسكريبت تتفاعل مع الصفحة |
| 5 | document.body.style.backgroundColor = "lightblue"; |
| 6 | |
| 7 | // وتستجيب لأفعال المستخدم |
| 8 | alert("تم تحميل الصفحة بنجاح"); |
مثال 2: استخدامات جافاسكريبت المختلفة
| 1 | // جافاسكريبت في كل مكان |
| 2 | |
| 3 | // 1) في المتصفح (Client-Side) |
| 4 | document.getElementById("btn").addEventListener("click", () => { |
| 5 | console.log("تم الضغط على الزر"); |
| 6 | }); |
| 7 | |
| 8 | // 2) على الخادم عبر Node.js (Server-Side) |
| 9 | // const http = require("http"); |
| 10 | // http.createServer((req, res) => res.end("مرحباً")).listen(3000); |