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

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

ما هو الوضع الصارم؟

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

كانت لغة Perl ، وهي لغة برمجة نصية مفسرة أخرى ، لها أسلوبها الصارم منذ فترة طويلة. يحظر هذا الوضع أنواعًا معينة من التعبير غير الآمن.

كيف يمكنني استخدام Strict Mode في JavaScript؟

داخل النص البرمجي ، ضع عبارة "use strict" في الجزء العلوي مباشرةً ، قبل أي عبارات أخرى:

// سيكون هذا النص بأكمله في الوضع المتشدد
"استخدام صارم" ؛

لاحظ أنه يمكنك تضمين تعليق قبله ، لكن بدون بيانات. يمكنك تمكين الوضع المتشدد في ملف JavaScript ، أو في بداية كتلة البرنامج النصي في ملف HTML. يمكنك أيضًا تمكين الوضع المتشدد على أساس كل وظيفة على حدة:

instagram viewer

دالة صارمة () {
// بناء جملة الوضع الصارم على مستوى الوظيفة
"استخدام صارم" ؛
إرجاع "هذه الوظيفة صارمة" ؛
}
وظيفة فضفاضة () {
إرجاع "هذه الوظيفة ليست صارمة" ؛
}

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

ماذا يفعل وضع جافا سكريبت الصارم؟

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

يمنع الكرات الأرضية العرضية

أفضل مثال على الحماية من الوضع الصارم هو إنشاء متغيرات عامة عرضية. في التنفيذ العادي ، هذا الرمز:

ميفار = 17 ؛

سينشئ خاصية تسمى myVar على الكائن العام ، بافتراض أنك لم تعلن من قبل عن myVar. في متصفح الويب ، يكون الكائن العام عادةً نافذة:

console.log (window.myVar) ؛
>> 17

ومع ذلك ، إذا قمت بتضمين عبارة "use strict" ، فسترى خطأً في وحدة التحكم ، مثل:

خطأ مرجع غير معلوم: لم يتم تعريف myVar

السبب في أن هذا مفيد للغاية هو أنه يلتقط حالة شائعة من الأخطاء المطبعية. من السهل كتابة اسم متغير بشكل خاطئ ، وستقوم العديد من اللغات باختيارنا عند حدوث مثل هذا الخطأ.

لكن JavaScript ، بشكل افتراضي ، يفترض ببساطة نطاق الكائن العام ويستمر كما لو لم يكن هناك خطأ. قد تعتمد بعض التعليمات البرمجية عمدًا على هذا السلوك ، وهو شيء يجب أن تكون على دراية به عند اتخاذ قرار باستخدام الوضع المتشدد.

أنظر أيضا: كيفية الحفاظ على الكود الخاص بك نظيفًا باستخدام تغليف الكائن

يجعل الفشل صريحًا

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

NaN = 2 ؛
>> 2

ولكن على الرغم من أنه يبدو كما لو أن هذا الواجب قد نجح ، إلا أنه لم يتم:

ن
>> ن

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

جافا سكريبت
دالة badNaN () {"استخدام صارمة" ؛ نافذة او شباك. NaN = 2 ؛ }
>> غير محدد
badNan ()
>> خطأ نوع غير معلوم: لا يمكن التعيين للقراءة فقط خاصية 'NaN' للكائن '#'
في badNaN (: 1: 46)
في: 1: 1

هذا مثال كلاسيكي يظهر أنه في حين أن الجهل قد يكون نعمة ، فمن الأفضل أحيانًا معرفة ما إذا حدث خطأ ما.

يحذر من تكرار المعامِلات

يتعامل المثال الأخير مع ميزة غير معروفة في JavaScript. قد يفاجئك معرفة أن أسماء المعلمات لا يجب أن تكون فريدة:

وظيفة dupeParam (أ ، أ ، ج) {console.log (أ) ؛ }
>> غير محدد
dupeParam (2، 4، 8)
>> 4

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

وظيفة dupeParam (أ ، أ ، ج) {"استخدام صارم" ؛ }
<< خطأ في بناء الجملة غير معلوم: اسم معلمة مكرر غير مسموح به في هذا السياق

استخدم الوضع الصارم لمزيد من الثقة في التعليمات البرمجية

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

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

10 مبادئ برمجة أساسية يجب على كل مبرمج معرفتها

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

اقرأ التالي

يشاركسقسقةبريد الالكتروني
مواضيع ذات صلة
  • برمجة
  • جافا سكريبت
  • تطوير الشبكة
  • لغات البرمجة
نبذة عن الكاتب
بوبي جاك (تم نشر 62 مقالة)

بوبي متحمس للتكنولوجيا وعمل كمطور برمجيات لأكثر من عقدين من الزمن. إنه شغوف بالألعاب ، ويعمل كرئيس تحرير في مجلة Switch Player ، ومنغمس في جميع جوانب النشر عبر الإنترنت وتطوير الويب.

المزيد من Bobby Jack

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك