Javascript هي لغة برمجة نصية من جانب العميل من النوع الديناميكي الموروثة من النوع الأولي وحساسة لحالة الأحرف تم تطويرها من Netscape's LiveScript والغرض الرئيسي هو حل مشكلة اللغات من جانب الخادم، مثل Perl، والسرعة المتبقية المشكلات، مما يوفر للعملاء تأثير تصفح أكثر سلاسة.
في ذلك الوقت، كان الخادم بحاجة إلى التحقق من البيانات نظرًا لأن سرعة الشبكة كانت بطيئة جدًا، فقط 28.8 كيلوبت في الثانية، فقد أهدرت خطوة التحقق الكثير من الوقت. لذلك أضاف متصفح Navigator الخاص بـ Netscape جافا سكريبت لتوفير الوظائف الأساسية للتحقق من البيانات. الاسم الرسمي لجافا سكريبت هو "ECMAScript". تم تطوير هذا المعيار وصيانته بواسطة منظمة ECMA. ECMA-262 هو معيار JavaScript الرسمي. يعتمد هذا المعيار على JavaScript (Netscape) وJScript (Microsoft).
اخترع بريندان إيتش من Netscape (Navigator 2.0) هذه اللغة التي ظهرت في جميع متصفحات Netscape وMicrosoft منذ عام 1996. بدأ تطوير ECMA-262 في عام 1996، وفي يوليو 1997، اعتمدت الجمعية العامة لـ ECMA نسختها الأولى.
تشتمل مكونات JavaScript على ECMAScript
، و DOM
، و BOM
.
JS عبارة عن بيان نصي صغير يتم تشغيله على المتصفح، ويمكنه تحقيق الرسوم المتحركة لمحتوى نص صفحة الويب، وتغييرات البيانات الديناميكية، والمؤثرات الخاصة للرسوم المتحركة، وما إلى ذلك.
ECMAScript
هي لغة برمجة نصية موحدة من قبل جمعية مصنعي أجهزة الكمبيوتر الأوروبية (ECMA) من خلال ECMA-262، ببساطة، تصف ECMAScript بناء الجملة والأنواع والبيانات والكلمات الرئيسية والكلمات المحجوزة والمشغلين والكائنات. فهو يحدد جميع خصائص وأساليب وكائنات لغة البرمجة النصية.
يقومDOM
بتخطيط الصفحة بأكملها في مستند يتكون من طبقات عقدة، ولا يرتبط بالمتصفحات والأنظمة الأساسية واللغات، فهو يوفر لمطوري الويب معيارًا للوصول إلى البيانات والبرامج النصية وكائنات طبقة العرض التقديمية في الموقع محتوى الويب تأثير التحقق والتغييرات الديناميكية
BOM
هي إحدى ميزات المتصفح، والتي يمكنها الوصول إلى نافذة المتصفح وتشغيلها، مثل النقل وإغلاق النافذة وضبط حجم النافذة ودعم ملفات تعريف الارتباط وما إلى ذلك. يمكن لبرمجة BOM تحقيق تأثير التحكم الديناميكي في سلوك المتصفح نفسه
. يقول بعض الأشخاص أيضًا هذا:
يمكن فهم ECMAScript على أنه جزء بناء الجملة الأساسي لـ JS. يمكن فهم
DOM ببساطة على أنه BOM البرمجة الذي يستخدم كائن المستند لتشغيل محتوى المستند
ويمكن فهمه على أنه البرمجة التي تستخدم كائن النافذة لتشغيل سلوك المتصفح
.ميزات
JSتعمل JS على المتصفح بلغة البرمجة النصية
1. لغة البرنامج النصي
لغة البرنامج النصي هي برنامج بسيط وصغير الحجم ولا يحتاج إلى تجميع ويعمل بسرعة، ويتكون من بعض أحرف ASCII ويمكن كتابته باستخدام أي محرر نصوص. تشير لغة البرمجة النصية إلى لغة برمجة يتم تفسيرها وتنفيذها بواسطة مترجم في متصفح الويب في كل مرة يتم فيها تشغيل برنامج، سيقوم المترجم بترجمة كود البرنامج إلى تنسيق قابل للتنفيذ. يجب تجميع بعض لغات البرمجة (مثل C وC++ وJava وما إلى ذلك)، ويجب تجميع الكود المصدري في ملف ثنائي قابل للتنفيذ قبل أن يتم تشغيله، ولا يلزم تجميع لغات البرمجة النصية مقدما، طالما أن هناك مترجم مناسب تنفيذ.
2. لغة كائنية
التوجه لها ثلاث خصائص رئيسية (التغليف، الميراث، تعدد الأشكال) التي لا غنى عنها. عادةً ما يستخدم "المستند إلى الكائنات" الكائنات، ولكن لا يمكن استخدام قوالب الكائنات الموجودة لإنشاء أنواع كائنات جديدة. وبعبارة أخرى، لا يتمتع "المستند إلى الكائنات" بخصائص الوراثة. بدون مفهوم الميراث، لا توجد طريقة للحديث عن "تعدد الأشكال".
3.تسمى الإجراءات
التي تعتمد على الأحداث
والتي تؤدي عمليات معينة على صفحة الويب "الأحداث"، مثل الضغط على الماوس، وتحريك النوافذ، واختيار القوائم، وما إلى ذلك.يمكن اعتباره حدثا. عند وقوع حدث ما، قد يتم تشغيل استجابة الحدث المقابلة.
4. البساطة
نوع المتغير مكتوب بشكل ضعيف ولا يستخدم أنواع بيانات صارمة. var a,b,c; a=123; b="abc"; a=b;
5. الأمان
لا يمكن لـ JavaScript الوصول إلى القرص الصلب المحلي، ولا يمكنه تخزين البيانات على الخادم، ولا يمكنه تعديل أو حذف معلومات الشبكة لا يمكن تحقيق التفاعل الديناميكي إلا من خلال المتصفح.
6. تعتمد JavaScript عبر الأنظمة الأساسية
على المتصفح نفسه ولا علاقة لها بمنصة التشغيل طالما أن الكمبيوتر يحتوي على متصفح يدعم JavaScript (مثبت مع مترجم JavaScript). يمكن تنفيذ برنامج JavaScript بشكل صحيح.
العيوب:
المتصفحات المختلفة تدعم جافا سكريبت بدرجات متفاوتة، المتصفحات التي تدعم جافا سكريبت والمتصفحات التي لا تدعم جافا سكريبت بشكل كامل سيكون لها فجوة معينة في التأثير عند تصفح نفس صفحة الويب باستخدام نصوص جافا سكريبت، وفي بعض الأحيان قد لا يتم عرضها.
الفرق 1: شركات مختلفة وأسلاف مختلفة
JavaScript هي أحد منتجات Netscape وهي لغة تفسيرية تعتمد على الكائنات والأحداث وتم تطويرها لتوسيع وظائف Netscape Navigator التي يمكن تضمينها في صفحات الويب سابق Java هو Live Script؛ Java هو جيل جديد من لغات البرمجة الموجهة للكائنات التي أطلقتها SUN، وهي مناسبة بشكل خاص لتطوير تطبيقات الإنترنت.
الفرق 2: جافا سكريبت المستندة إلى الكائنات والموجهة نحو الكائنات
هي لغة برمجة نصية ولغة مستندة إلى الكائنات. إنه في حد ذاته يوفر مجموعة غنية جدًا من الكائنات الداخلية ليستخدمها المصممون، لكنه لا يدعم الوراثة وتعدد الأشكال. Java هي لغة موجهة للكائنات، وهي لغة حقيقية موجهة للكائنات، وتدعم التغليف والميراث وتعدد الأشكال.
الفرق 3: تختلف الأنواع المتغيرة في القوة والضعف.
تستخدم Java فحصًا قويًا لمتغير النوع، أي أنه يجب الإعلان عن جميع المتغيرات كنوع محدد قبل التجميع. على سبيل المثال: int x=1234 هو متغير مكتوب بشكل ضعيف في JavaScript. يتم استخدام عبارة var بشكل موحد ويمكن تعيين قيم مختلفة لنوع البيانات.
الفرق 4: يختلف موقع التشغيل.
تعمل Java على جانب الخادم، وهي لغة برمجة كبيرة، بينما تعمل JS على العميل (المتصفح)، وهي لغة برمجة نصية صغيرة الحجم.
تعد HTML وCSS وJS هي التقنية الرئيسية للواجهة الأمامية، وللثلاثة تقسيم عمل خاص بهم. يمكن استخدام HTML لإنشاء البنية الرئيسية لصفحة الويب، ويتم استخدام CSS لتجميل الويب الصفحة، ويتم استخدام JS لإضافة تأثيرات ديناميكية إلى صفحة الويب.
ماذا عن الصورة يا صديقي؟
طريقة المقدمة المضمنة:
1. في علامة الرأس، استخدم زوجًا من علامات script
لتضمين كود js
2. لا يلزم كتابة سمة النوع
<!DOCTYPE html><html> <الرأس> <meta charset="utf-8" /> <title>طريقة تقديم JS 1</title> <!--طريقة المقدمة المضمنة 1. في علامة الرأس، استخدم زوجًا من علامات البرنامج النصي لتضمين كود js 2. لا يلزم كتابة سمة النوع --> <نوع البرنامج النصي = "نص/جافا سكريبت"> // تحديد وظيفة (طريقة) وظيفة ممتعة 1 () { // تنبيه الرسالة المنبثقة ("كلمة الترحيب") } </script> </الرأس> <الجسم> <input type = "button" value = "انقر فوقي" onclick = "fun1 ()"/> </body></html>
عيب:
1. لا يمكن استخدام كود JS الذي حددناه إلا في صفحة الويب الحالية، مع إمكانية إعادة استخدام منخفضة للكود وقابلية صيانة منخفضة
يتم خلط كود JS ورمز HTML في ملف واحد، مع ضعف إمكانية القراءة
<!DOCTYPE html><html> <الرأس> <ميتا محارف = "UTF-8"> <title>طريقة تقديم JS 2</title> <!--مقدمة مرتبطة لملفات js الخارجية 1. تحسين إعادة استخدام التعليمات البرمجية 2. تقليل صعوبة صيانة التعليمات البرمجية 3. يمكن لصفحة واحدة تقديم عدة ملفات js مختلفة في نفس الوقت 4. بمجرد تقديم ملف نهائي خارجي في علامة البرنامج النصي ، لا يمكن تحديد الكود المضمن في المنتصف --> <script type="text/javascript" src="js/myjs.js"></script> <script type="text/javascript" src="js/myjs2.js"></script> <النص البرمجي> وظيفة fun3() { تنبيه ("طريقة تقديم js") } </script> </الرأس> <الجسم> <input type = "button" value = "انقر فوقي" onclick = "fun1 ()"/> <input type = "button" value = "انقر فوقي 2" onclick = "fun2 ()"/> <input type = "button" value = "انقر فوقي 3" onclick = "fun3 ()"/> </body></html>
المزايا:
إعادة استخدام عالي للكود، أسهل في الحفاظ على الكود
ملاحظات:
1. يمكن تقديم ملفات JS متعددة على صفحة واحدة في نفس الوقت
2. يجب تقديم كل ملف JS باستخدام علامة script
مستقل
3. لا يمكن للمقدمات المضمنة والمرتبطة استخدام نفس العلامة.