تقديم

يقدم هذا الفصل جافا سكريبت ويناقش بعض مفاهيمها الأساسية.

ما يجب أن تعرفه مسبقا

هذا الدليل يفترض أن يكون لديك الخلفية الأساسية التالية:

  • معرفة عامة لشبكة الأنترنت و شبكة الويب العالمية (WWW).
  • معرفة جيدة العمل من لغة ترميز النص التشعبي (HTML).
  • بعض الخبرة في البرمجة. إذا كنت جديدا على البرمجة، يمكنك الأطلاع على أحد الدروس الموجودة على الصفحة الرئيسية حول جافا سكريبت.

أين تجد معلومات عن الجافا سكربيت

وثائق جافا سكربيت على MDN تشمل مايلي:

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

ما هي الجافاسكريبت؟

الجافاسكريبت هي لغة برمجة كائنية التوجة ومتعددة المنصات. لغة صغيرة وخفيفة الوزن. داخل بيئة المضيف (على سبيل المثال، متصفح ويب)، يمكن ان تكون الجافاسكريبت مرتبطة لكائنات البيئة لتوفير التحكم البرمجي عليها.

تحتوي الجافاسكريبت على مكتبة قياسية من الكائنات، مثل Array، Date، وMath، ومجموعة أساسية من العناصر اللغوية مثل العوامل، بنى التحكم، والتصريحات. جوهرة جافا سكريبت هي تمديدها لمجموعة متنوعة من الأغراض التي تكون مكملة مع كائنات إضافية. على سبيل المثال:

  • من جانب العميل جافا سكريبت يمتد إلى صميم اللغة الأساسية من خلال تزويد الكائنات إلى السيطرة على المتصفح ونموذج كائن وثيقتها (DOM). على سبيل المثال، ملحقات العميل تسمح للتطبيق لوضع عناصر على شكل HTML والاستجابة للأحداث المستخدم مثل نقرات الماوس، ومدخلات النموذج، وتوجيه الصفحة.
  • من جانب الخادم جافا سكريبت يمتد إلى صميم اللغة الأساسية من خلال توفير الأشياء ذات الصلة إلى تشغيل الجافا سكريبت على الخادم. على سبيل المثال، ملحقات من جانب الخادم تسمح للتطبيق على التواصل مع قاعدة بيانات، وتوفير استمرارية المعلومات من أحتجاج واحد إلى آخر من التطبيق، أو أداء التلاعب بملف على الخادم.

جافا سكريبت وجافا

الجافاسكريبت والجافا متشابهان في بعض الأشياء ولكن مختلفان اختلافا جوهريا في بعض أشياء الآخرى. لغة الجافاسكريبت تشبه جافا ولكن ليس لديها Java's ولكن ليس لديها كتابة ثابتة ونوع تدقيق قوي. جافا سكريبت تتبع معظم جافا التعبير اللغوي، واصطلاحات التسمية وبنيات ضبط تدفق الأساسية التي كانت السبب لماذا تم تغيير اسمها من LiveScript إلى JavaScript.

على عكس Java's  نظام من طبقات تم بنائه بواسطة الأعلانات، جافا سكربت يدعم نظام وقت التشغيل بناء على عدد قليل من أنواع البيانات التي تمثل الرقمية، منطقية، وقيم السلسلة. يستخدم جافا سكريبت نموذج يستند إلى نماذج لتمثيل الروابط بين الأشياء جافا ثم يستخدم نموذج مشترك قائم على الطبقات. النماذج تسمح أن يكون إرثا الحيوية. وبالتالي، فإن الخصائص الموروثة من كائن قد تختلف في الوقت المناسب. جافا سكريبت يدعم أيضا وظائف التي هي كائنات كاملة التي قد تكون خصائص الكائنات الأخرى.

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

في المقابل، جافا سكريبت تنحدر من نفس الروح من خط أصغر، لغات كتبته حيوي مثل HyperTalk and dBASE. هذه لغات البرمجة توفر أدوات البرمجة لجمهور أوسع من ذلك بكثير بسبب تركيب أسهل، والمتخصصة المدمج في وظائف، ومتطلبات الحد الأدنى لإنشاء الكائن.

جافا سكريبت مقارنة مع جافا

جافا سكربيت جافا
Object-oriented. لا تميز بين الأنواع من الكائنات. الميراث هو من خلال آلية النموذج، والخصائص والأساليب يمكن أن تضاف إلى أي كائن حيوي. على أساس طبقي (Class-based). تنقسم الكائنات إلى فئات وحالات مع كل الإرث من خلال التسلسل الهرمي فئة. دروس وحالات لا يمكن تلقي الخصائص أو الأساليب الجديدة بشكل حيوي.
لم يتم التصريح نوع البيانات متغير (الكتابة الديناميكية). يجب تعريف أنواع البيانات المتغيرة (الكتابة ثابتة).
لا يمكن الكتابة تلقائيا إلى القرص الثابت.
 
يمكن الكتابة تلقائيا إلى القرص الثابت.
 

لمزيد من المعلومات حول الاختلافات بين جافا سكريبت وجافا، انظر الفصل تفاصيل من طراز كائن.

جافا سكريبت ومواصفات ECMAScript

 جافا سكريبت موحدة عن طريق Ecma International - الجمعية الأوروبية لتوحيد نظم المعلومات والاتصالات (ECMA كونه اختصار لجمعية مصنعي الكمبيوتر الأوروبية تاريخيا) التي تنص على لغة برمجة موحدة، ودعا ECMAScript الدولية. هذه اللغة تتصرف بنفس الطريقة لجميع التطبيقات التي تدعم هذا المعيار. يمكن للشركات استخدام هذه اللغة القياسية لتطوير تنفيذها للجافا سكريبت. يتم توثيق ECMAScript القياسية مع ECMA-262. انظر رؤية جديد جافا سكريبت لمعرفة المزيد عن إصدارات مختلفة من جافا سكريبت وطبعات مختلفة من مواصفات ECMAScript.

الموافقة على مستوى ECMA-262 أيضا من قبل ISO (المنظمة الدولية للتوحيد القياسي) كما ISO-16262. يمكنك أيضا العثور على مواصفات على موقع Ecma International. لم يتم توضيح مواصفات ECMAScript طراز كائن المستند (DOM)، وهي موحدة من قبل اتحاد شبكة ويب العالمية (W3C). وDOM يحدد الطريقة التي يتعرضون كائنات المستند HTML إلى السيناريو الخاص بك. للحصول على فكرة أفضل حول التقنيات المختلفة التي يتم استخدامها عند البرمجة مع جافا سكريبت، راجع مقالة جافا سكريبت نظرة عامة التكنولوجيات.

وثائق جافا سكريبت مقابل مواصفات ECMAScript

مواصفات ECMAScript هي مجموعة من المتطلبات لتنفيذ ECMAScript. من المفيد إذا كنت ترغب في تنفيذ ميزات اللغة المعايير المتوافقة في تنفيذ ECMAScript الخاص بك أو محرك (مثل SpiderMonkey في فايرفوكس، أو V8 في كروم).
 

وليس المقصود الوثيقة ECMAScript لمساعدة المبرمجين للسكربيت. استخدام وثائق جافا سكريبت للحصول على معلومات حول كتابة السكربيتات.

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

تصف الوثائق جافا سكريبت جوانب اللغة التي هي مناسبة لمبرمج جافا سكريبت.

الشروع في العمل مع جافا سكريبت

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

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

وحدة تحكم ويب

وحدة تحكم ويب يعرض لك معلومات عن صفحة ويب تم تحميلها حاليا، ويشمل أيضا سطر الأوامر التي يمكنك استخدامها لتنفيذ عبارات الجافا سكربت في الصفحة الحالية.

لفتح وحدة تحكم ويب (Ctrl+Shift+K)، حدد "وحدة تحكم ويب" من القائمة "المطور"، التي تقع تحت قائمة "أدوات" في فايرفوكس. ويبدو في الجزء السفلي من نافذة المتصفح. على طول الجزء السفلي من وحدة التحكم هو سطر الأوامر التي يمكنك استخدامها للدخول جافا سكريبت، ويظهر الناتج في الجزء أعلاه:

المسودة

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

لفتح المسودة (Shift+F4)، حدد "المسودة" من القائمة "المطور"، وهو ضمن القائمة في فايرفوكس. فإنه يفتح في نافذة منفصلة وغير محررا التي يمكنك استخدامها لكتابة وتنفيذ جافا سكريبت في المتصفح. يمكنك أيضا حفظ النصوص إلى القرص وتحميلها من القرص.

مرحبا بالعالم

لتبدأ كتابة جافا سكريبت، فتح المسودة والكتابة أولا "مرحبا بالعالم" شفرة جافا سكريبت:

function greetMe(yourName) {
  alert("Hello " + yourName);
}

greetMe("World");

حدد رمز في لوحة واضغط على Ctrl + R لمشاهدته في المتصفح الخاص بك!

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

Document Tags and Contributors

 Contributors to this page: Benseidseid, Naaman
 Last updated by: Benseidseid,