هذه المقالة ليست مقالة يدوي مرجعية ، فهي مناسبة فقط لتوليد فهم عام لـ JS. إذا كنت بحاجة إلى بناء جملة مفصل وتطبيق JS ، فيرجى الانتقال إلى W3School.
ما هو JavaScript؟
ولادة جافا سكريبت
حوالي عام 1995 ، كان عرض النطاق الترددي السائد في العالم 28.8 كيلو بايت في الثانية ، ويبلغ متوسط عرض النطاق الترددي للتنزيل في العالم الآن 21.9 ميغابت في الثانية (البيانات تأتي من http://www.netindex.com). في ذلك الوقت ، كان على الإنترنت أن ينتظروا وقتًا طويلاً لتلقي استجابة من الخادم في كل مرة يقدمون فيها نموذجًا. من المحتمل جدًا أن يكون ما تلقوه بعد انتظار بضع دقائق هو أنهم في عداد المفقودين. من أجل تحسين تجربة المستخدم ، ولدت البرامج النصية المضمنة في عميل المتصفح والتي يمكنها تحقيق حكم بسيط ، وهو JavaScript.
تم تطوير JavaScript لأول مرة من قبل Brendan Eich ، الذي عمل في Netscape (NN2.0) ، لـ Netscapenavigator 2.0 (NN2.0) ، الذي سيتم إصداره في عام 1995 ، ثم أطلق عليه اسم LiveScript. نظرًا لأنه كان يعمل مع شركة Sun ذات الشعبية الشهيرة في ذلك الوقت ، من أجل اللحاق بالاتجاه في ذلك الوقت - لغة Java ، تم تسمية هذه اللغة JavaScript.
ما هي العلاقة بين JavaScript و Java؟
هذا هو أيضًا رد الفعل الأول للعلماء عندما يسمعون JavaScript ، وهو أيضًا أحد أكثر المشكلات انتقادًا في هذه اللغة.
بالمعنى الدقيق للكلمة ، لا توجد علاقة بين نصف سنت. إذا كان عليك المشاركة ، فربما تكون بعض وظائف الاثنين هي نفسها ، والأفكار الموجهة نحو الكائن ، وهياكل الحكم ، وبيانات الحلقة ، وما إلى ذلك ، ولكن من الواضح أنها ليست براءات اختراع Java ، ولكن إجماع لغات البرمجة.
توحيد JavaScript وتاريخ التطوير
عندما تم إطلاق JavaScript ، سيطرت متصفحات NN ذات تجربة مستخدم أفضل على سوق المتصفح ، وكانت Microsoft تلحق بالركب. عندما تم إطلاق IE3 ، أصدرت Microsoft vbscript ووصفتها JScript ، والتي لا تختلف كثيرًا عن JavaScript من Netscape (من حيث اليوم ، إنها نسخ). في مواجهة مسابقة Microsoft ، قدمت Netscape و Sun مسودة JavaScript الخاصة بها إلى ECMA (الرابطة الأوروبية لمصنعي الكمبيوتر) لتوحيد JavaScript ، وأخيراً شكلت الإصدار الأول من ECMASCRIPT (ECMA-262).
ومن المثير للاهتمام ، بعد JavaScript الموحد Netscape ، كانت هناك مشكلة داخلية. ركود JavaScript Research ، بينما انتهزت Microsoft الفرصة للحاق وإطلاق IE4 ، والتي تم تضمينها في أول محرك JavaScript الذي تبع مواصفات ECMA ، قبل عام من NN. بالإضافة إلى ذلك ، تحتل Microsoft System تدريجياً سوق نظام تشغيل الكمبيوتر ، وتزداد حصتها التي تم تثبيتها مسبقًا في سوق متصفح IE تدريجياً ، ويتم الضغط على NN باستمرار في السوق. ومع ذلك ، عندما تفقد Microsoft أكبر منافسها ، ليس لديها أي دافع للتطوير. IE6 ~ IE8 ، كلاهما عرض الواجهة وتنفيذ البرنامج النصي ، لا يتوافق مع بعضهما البعض ، ليصبح غريبًا في تاريخ المتصفحات وكابوس للمطورين الأماميين.
نسخة الكود كما يلي:
1.v1 الطبعة الأولى في يونيو 1997
2.V2 يونيو 1998 تنسيق منقحة لجعل شكله متسقًا مع المعيار الدولي ISO/IEC16262
3.v3 ديسمبر 1999 تعبيرات منتظمة قوية ، ومعالجة سلسلة نصية أفضل ، وتعليمات تحكم جديدة ، ومعالجة استثناءات ، وتعريفات خطأ أوضح ، وتنسيق إخراج الأرقام والتغييرات الأخرى
4.v4 لم يكتمل ... ربما أكثر صحة تعريف الفئة ، مساحة الاسم ، إلخ ...
5.v5 في ديسمبر 2009 ، تمت إضافة "الوضع الصارم" ، وهي مجموعة فرعية تستخدم لتوفير فحص خطأ أكثر شمولاً لتجنب الأخطاء الهيكلية. توضيح العديد من المواصفات الغامضة للإصدار 3 ، ويستوعب سلوك تطبيقات العالم الحقيقي التي تختلف بشكل متسق عن تلك المواصفات. تمت إضافة بعض الميزات الجديدة ، مثل Getters and Setters ، والتي تدعم JSON وانعكاسات أكثر اكتمالا على خصائص الكائن.
**** في يونيو 2004 ، أصدرت الرابطة الأوروبية لمصنعي الكمبيوتر معيار ECMA-357 ، وهو امتداد لـ ECMASCRIPT ، والمعروف أيضًا باسم E4X (ECMASCRIPT لـ XML).
ما هي العلاقة بين JavaScript و Ecmascript؟
في الواقع ، يجب أن يكون السؤال ما هي العلاقة بين JavaScript و JScript و Ecmascript. في الواقع ، ECMASCRIPT هو المواصفات الشاملة. يتم تطوير JavaScript و JScript وفقًا لهذه المواصفات ومتوافقة مع ECMASCRIPT ، ولكن تحتوي على وظائف تتجاوز ECMASCRIPT. ومع ذلك ، بغض النظر عن النوع الذي هو الآن ، يطلق عليه عادة JavaScript ، لأنه ظهر لأول مرة وله التأثير الأكبر وقد تم تمرير اسمه حتى يومنا هذا.
ماذا يمكن أن تفعل JavaScript؟
على صفحات الويب ، يمكن إكمال جميع العمليات التي تتطلب معالجة منطقية بواسطة JavaScript. على سبيل المثال:
نسخة الكود كما يلي:
• التحقق من النموذج
• آثار الرسوم المتحركة
• ألعاب الويب
•العد التنازلي
• ...
هناك العديد من التطبيقات الأخرى التي لن أشرحها هنا. أعتقد أنه بعد تعلم هذه اللغة ، ستجد العديد من التطبيقات.
لماذا تعلم جافا سكريبت؟
1. نظرًا لأنه ليس لديك خيار ، فإن JavaScript فقط يمكنه التحكم في جميع المتصفحات الشائعة الاستخدام ، وجافا سكريبت هي واحدة من أهم لغات البرمجة في العالم ، ويجب أن يتعلم تعلم تكنولوجيا الويب JavaScript.
2. JavaScript هي لغة جميلة ، إنها جيدة جدًا ، لذلك نحن بحاجة إلى التعلم
تحديد موقع JavaScript
نسخة الكود كما يلي:
1.
2. JavaScript له ميزات لغة غير وظيفية وميزات اللغة الوظيفية وميزات اللغة الديناميكية ، وبناء الجملة مرنة للغاية.
3. JavaScript هي لغة برمجة موجهة نحو الكائن. هناك قول في عالم JavaScript: كل شيء كائن. يعتمد ميراثها على ميراث النموذج الأولي (لقد كتبت مقالة خاصة تشرح الميراث النموذج الأولي من قبل)
4. JavaScript هي لغة C ، لذلك من السهل على أي شخص تعلم C أن يبدأ مع JavaScript.
5. جافا سكريبت مكتوبة بدون مترجم ، ولكن محرر نصوص فقط (مفكرة معفاة ، ينصح بشدة هنا) النص السامي هنا)
ما هو JavaScript؟
يتضمن JavaScript الذي نستخدمه الآن ثلاثة أجزاء: DOM و BOM و ECMASCRIPT (أو CORE JS).
دوم
هنا ، بشكل افتراضي ، لدى كل شخص على الأقل بعض الفهم لـ HTML و CSS. إذا تخطيت HTML و CSS مباشرة لقراءة هذه المقالة ، فيرجى القراءة هنا أولاً.
DOM ، نموذج كائن المستند
نحن نعلم أن XHTML يتطلب إغلاق العلامات ويجب أن يكون التعشيش صحيحًا. إن تعشيش العلامات يخلق علاقة الأب والابن (أو ، علاقة بين الأجداد). يوفر DOM عددًا كبيرًا من واجهات برمجة التطبيقات ، مما يتيح لنا معالجة أشجار DOM بسهولة. سأكتب مقالًا لاحقًا يتحدث على وجه التحديد عن JS DOM.
باستخدام DOM ، يمكننا تعديل محتوى الصفحة ديناميكيًا ، وضبط الأنماط ، وما إلى ذلك ، وهو أيضًا انعكاس لتنوع JS.
بوم
BOM ، نموذج كائن المتصفح
على غرار DOM ، باستثناء أن الجسم الرئيسي يصبح متصفحًا. يوفر المتصفح أيضًا عددًا كبيرًا من واجهات برمجة التطبيقات ، بعضها مفتوح لـ JS ، مما يوفر لنا وسيلة لتشغيل نوافذ المتصفح.
الاستخدامات الشائعة:
نسخة الكود كما يلي:
1. القدرة على الظهور على نافذة متصفح جديدة ؛
2. القدرة على التحرك ، إغلاق وتغيير حجم نافذة المتصفح ؛
3. كائنات التنقل التي يمكن أن توفر معلومات مفصلة لمتصفح الويب ؛
4. الكائنات المحلية التي يمكن أن توفر معلومات مفصلة حول صفحة تحميل المتصفح ؛
5. كائنات الشاشة التي يمكن أن توفر معلومات مفصلة عن دقة شاشة المستخدم ؛
6. دعم ملفات تعريف الارتباط ؛
7. Internet Explorer يمتد BOM ليشمل فئات كائن ActiveX ، ويمكن تنفيذ كائنات ActiveX من خلال JavaScript.
CORE ECMASCRIPT
يُطلق عليه أيضًا JS Core ، بغض النظر عن كيفية تسميته ، فهذا يعني نفس المعنى ، وهو يمثل التكوين الأساسي للغة JS ، بما في ذلك التعريف المتغير ، وجمع القمامة ، وبناء الجملة ، والنطاق ، وما إلى ذلك. على عكس DOM و BOM المذكورة أعلاه ، فإنها تتطلب منا فقط استخدام واجهات برمجة التطبيقات هذه ، و ECMASCROCT CORE هي جوهر هذه اللغة وتتطلب بحثًا مستمرًا. سيتحدث الفصل التالي أيضًا عن بناء جملة JS.
استخدام JavaScript
نمط في الخط
النموذج المضمن هو JavaScript مكتوب بعلامات. على سبيل المثال ، نكتب في HTML:
نسخة الكود كما يلي:
<button onClick = "Alert ('be plicked') ؛"> انقر فوق </button>
عند النقر فوق الزر ، سيتم عرض المربع "يتم النقر فوق".
لكن لاحظ أن هذا لا ينصح بقوة ، لأن هذا سيؤدي إلى مشكلة كبيرة في الصيانة. في كل مرة نحتاج إلى تغيير الحدث ، نحتاج إلى العثور على العنصر أولاً ثم تعديل محتوى JavaScript الخاص به ، ولا يمكن إعادة استخدام رموز JavaScript هذه.
بالإضافة إلى ذلك ، يجب أن تكون الأحداث المكتوبة بعلامات "ON" ، ولا يمكن تقديم JS إلا من خلال الأحداث في العلامات ، ولا يمكن كتابة تعبيرات JS البسيطة.
مغروس
المدمجة تعني كتابة رمز JS في علامة البرنامج النصي HTML. تتمثل الطريقة في إضافة علامة نصية إلى HTML ثم أدخل أي رمز JS في منتصف العلامة ، على النحو التالي:
نسخة الكود كما يلي:
<html>
<body>
<button id = "btn"> انقر فوق </button>
</body>
<script>
<span style = "font-family: arial ، helvetica ، sans-serif ؛"> var btn = document.getElementById ("btn") ؛ </span> <pre name = "code"> btn.onclick = function () {
تنبيه ("يجب النقر فوق") ؛
}
</script> </html>
إذا كنت تستخدم النمط المضمن ، فهو أكثر حرية من النمط المضمّن. يمكنك كتابة المزيد من التعليمات البرمجية ، وتجنب اقتباس الهروب من المشاكل ، والحفاظ عليها أسهل. لكن المشكلة موجودة أيضًا. لا يمكن تطبيق هذه الرموز إلا على هذه الصفحة ولا يمكن استخدامها بواسطة صفحات أخرى.
خارجي
طريقة الاتصال الخارجي تحل جميع أوجه القصور في النموذجين أعلاه. الطرق التالية هي كما يلي:
إنشاء ملف جديد أولاً وقم بتغيير اللاحقة إلى .js. على سبيل المثال ، نقوم بإنشاء ملف Click.js جديد ونسخ رمز JS في الإصدار المدمج الذي كتبناه للتو (لاحظ أننا لا ندرج علامات البرنامج النصي)
نسخة الكود كما يلي:
var btn = document.getElementById ("btn") ؛
btn.onclick = function () {
تنبيه ("يجب النقر فوق") ؛
}
ثم استيراده في HTML عبر علامة البرنامج النصي
نسخة الكود كما يلي:
<html>
<body>
<button id = "btn"> انقر فوق </button>
</body>
<script src = "click.js"> </script>
</html>
ميزة ذلك هي أنه يمكن مشاركة نفس رمز JS بواسطة صفحات HTML متعددة. العيب هو أن عدد الملفات يزداد وزيادة الوقت اللازم للطلبات. لذلك ، يجب تعزيز قابلية إعادة استخدام الكود ، وأخيراً يجب دمج ملف JS (دمج ملفات JS مختلفة في ملف JS واحد)