اكتب في المقدمة
في هذا الفصل ، سوف نتحدث عن العديد من العبارات الرئيسية مثل Switch ، fore-In ، Label ، إلخ. في ECMASCRIPT لتعميق فهمنا وفهمنا لها. لنبدأ بأكثرها شيوعًا.
بينما و
بينما هي بيانات شائعة جدًا ، سواء في JavaScript أو C أو لغات البرمجة الأخرى. علاوة على ذلك ، في البرمجة ، نستخدم أكثر شيوعًا ، وهو أكثر مرونة وأبسط للاستخدام ، لذلك قد يكون لدى بعض الأشخاص سوء فهم:
لأنه أقوى من الوقت ويمكنه القيام ببعض الأشياء في حين لا.
في الواقع ، إذا فكرنا في تطبيق بناء الجملة لـ There and for Dities ، فسنجد:
من أجل الحلقة التي لا يمكن القيام بها بينما لا يمكن القيام بالحلقات أيضًا.
هذا لأن الحلقة الخاصة تجمع فقط الكود المتعلق بحلقة بينما. في الواقع ، يكون من الأسهل في بعض الأحيان استخدام حلقة فترة من استخدام حلقة. وذلك أيضًا لأن كل منهم يؤدي واجباته الخاصة ولديه إيجابيات وسلبيات.
نقطة أخرى حول الحلقات ، دعنا نلقي نظرة أولاً على قطعة من الكود:
لـ (i = 0 ؛ i <5 ؛ i ++) {console.log (i) ؛} console.log (i) ؛طباعة أنا خارج الحلقة ، المطبوعة هي 5.
كما ترون ، يمكن أيضًا الوصول إلى المتغيرات المحددة داخل الحلقة خارجيًا. في بعض اللغات ، مثل C ، تحدد الأقواس نطاق مستوى الكتلة ، ولكن لا يوجد مفهوم لنطاق مستوى الكتلة في ECMASCRIPT ، لذلك يمكن أيضًا الوصول إلى المتغيرات المحددة داخل الحلقة خارجيًا.
بيان التبديل
في لغات البرمجة الأخرى ، مثل C ، يمكن لبيانات التبديل استخدام الأرقام فقط ، بينما في ECMASCRIPT ، يمكن أن تستخدم عبارات التبديل أي نوع بيانات ، مثل السلاسل والكائنات.
فيما يلي نقطة يجب شرحها: المشغل المتطابق المستخدم عند مقارنة عبارات التبديل ، أي === ، لذلك لا يساوي "10" و 10 ، لأن تحويل النوع لا يحدث عند مقارنة المقارنات المتطابقة.
بيان
إن البيان المتواصل عبارة عن بيان تكراري دقيق يمكن استخدامه للتكرار على خصائص كائن ما ، وبالطبع يمكن أن يتكرر أيضًا على خصائص الصفيف. فيما يلي أمثلة:
كائنات اجتياز
• نافذة
أولا التكرار عبر نافذة كائن خاص:
لـ (var i in window) {console.log (i) ؛}سيتم طباعة قائمة طويلة جدًا من السمات ، ويمكنك التحقق من ذلك بنفسك. لن أدرجهم واحدًا تلو الآخر هنا.
• كائنات مخصصة
تكرار من خلال الكائنات المخصصة
var o = {prop1: 'value1' ، prop2: 'value2' ، prop3: 'value3'} ؛ for (var i in o) {console.log (i) ؛}طباعة prop1 prop2 prop3.
• صفيف
تكرار من خلال الصفيف
var array1 = [1،2،3،4] ؛ لـ (var i in array) {console.log (i) ؛}طباعة 1 2 3 4.
مع البيان
يمكن استخدام العبارة مع الحد من النطاقات ، أي يمكن تعيين نطاق الكود على كائن معين. على النحو التالي:
var hostname = location.hostname ؛ var url = location.href ؛
تحصل هاتان الجملتان على اسم المضيف وعنوان URL على التوالي. نظرًا لأنهم يشاركون الموقع (خصائص تحت نفس الكائن) ، يمكننا الحد من النطاق إلى الموقع ، أي استخدام العبارة مع ربط كائن الموقع. على النحو التالي:
مع (الموقع) {var hostname = hostname ؛ var url = href ؛}تجدر الإشارة إلى أن استخدام البيانات في الوضع الصارم سيؤدي إلى أخطاء بناء الجملة. في الوقت نفسه ، سيؤدي استخدام البيانات بكميات كبيرة إلى تدهور الأداء وسيؤدي أيضًا إلى صعوبات معينة في التصحيح. لذلك ، عند تطوير التطبيقات ، وخاصة عند تطوير تطبيقات كبيرة ، لا ينصح باستخدامه مع العبارات.
بيان التسمية
يتم استخدام عبارة التسمية لتسمية الكود بحيث يمكن استخدامها لاحقًا. بشكل عام ، يجب استخدام العبارات المسمى بالتزامن مع عبارات الحلقة مثل الحلقات.
بناء الجملة هو:
التسمية: بيان
فيما يلي رمز مفصل لمعرفة كيفية استخدام الملصقات.
1. أولا أعط رمزًا أساسيًا:
var num = 0 ؛ for (var i = 0 ؛ i <10 ؛ i ++) {for (var j = 0 ؛ j <10 ؛ j ++) {if (i == 5 && j == 5) {break ؛ } num ++ ؛ }} console.log (num) ؛الوصف: تقفز Break من الحلقة من الداخل ، J و Leaf Loops المتبقية لم تعد تنفذ ، وبالتالي فإن نتيجة الطباعة هي 95.
2. بعد ذلك نغير الاستراحة للمتابعة:
var num = 0 ؛ for (var i = 0 ؛ i <10 ؛ i ++) {for (var j = 0 ؛ j <10 ؛ j ++) {if (i == 5 && j == 5) {break ؛ } num ++ ؛ }} console.log (num) ؛ملاحظة: تابع القفز من هذه الحلقة ، مما يعني أن القفز من هذه الحلقة حيث تم القفز الداخلي للحلقة ، وبالتالي كانت النتيجة المطبوعة 99.
3. بعد ذلك ، نضيف ملصقًا يسمى Outer وننظر إلى نتائج الطباعة:
var num = 0 ؛ Outer: for (var i = 0 ؛ i <10 ؛ i ++) {for (var j = 0 ؛ j <10 ؛ j ++) {if (i == 5 && j == 5) {break Outer ؛ } num ++ ؛ }} console.log (num) ؛ملاحظة: بعد إضافة العلامة ، استخدم Break للقفز إلى العلامة الخارجية ، مما يعني أن البرنامج يقفز من الحلقة الخارجية ، أي أن البرنامج يتوقف عن التنفيذ عندما ينفذ البرنامج I = 5 و J = 5 ، وبالتالي فإن نتيجة الطباعة هي 55.
4. دعونا نتغير للمتابعة ونرى:
var num = 0 ؛ Outer: for (var i = 0 ؛ i <10 ؛ i ++) {for (var j = 0 ؛ j <10 ؛ j ++) {if (i == 5 && j == 5) {conte } num ++ ؛ }} console.log (num) ؛ملاحظة: هذه المرة أستخدمها ، لذلك عندما يتم تنفيذ البرنامج إلى i = 5 و j = 5 ، فإنه لا يقفز من الحلقة الخارجية ، ولكن فقط القفز من الحلقة الداخلية ، أي أن الخمس مرات المتبقية لن يتم تنفيذها ، وبالتالي فإن النتيجة المطبوعة هي 95.
يبدو أن تجميعها مرتبكًا بعض الشيء ، وسيكون من الأفضل فهم المزيد.
ملخص
نتعلم شيئًا ليس للتعلم ، ولكن لغرض استخدامه. لوضعها بصراحة ، نتعلمها من أجل العمل. لذلك ، ببساطة فهم ما سبق ليس هو الشيء الأكثر أهمية ، ليس من أجل التذكر ، ولكن من أجل استخدامه. أن تكون قادرًا على استخدامه بامتداد في الممارسة العملية هو ما نأمله. في الوقت نفسه ، تدوين الملاحظات عادة جيدة. الذاكرة الجيدة ليست جيدة مثل القلم السيئ. إذا كنت تفعل ذلك ، آمل أن تتمكن من التمسك به.
الجمل الرئيسية أعلاه للفهم المتعمق لـ ECMAScript هي كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.