مروان محمود3 نشر 30 أغسطس 2021 أرسل تقرير نشر 30 أغسطس 2021 ما معنى ال use strict فى لغة الجافاسكريبت 1 اقتباس
0 شرف الدين حفني نشر 30 أغسطس 2021 أرسل تقرير نشر 30 أغسطس 2021 الuse strict تجعل البرنامج يعمل في وضعية الstrict إذا ماهي وضعية الStrict ؟ وضعية الstrict تفرض عليك بعض القيود عند كتابة الشيفرة البرمجية , تلك القيود مهمتها أن تجعل الشيفرة السيئة المقبولة "مرفوضة" ,بمعنى أن بعض العادات السيئة التي كان بإمكانك القيام بها عند كتابة شيفرة الجافاسكريبت لن يعد بإمكانك القيام بها , أمثلة من تلك العادات : لا يمكنك الإشارة إلى متغير أو كائن بدون أن تقم بتعريفه مسبقاً فمثلاً "use strict"; name="sharaf" ; هذه الشفرة في المسبق كانت مقبولة ولن تتسبب بأخطاء, لكن بعد تفعيل وضعية الstrict او(الوضعية الصارمة) سيتسبب هذه السطر بخطأ لأنك قمت بالإشارة إلى المتغير name بدون أن تقم بتعريفه لا يمكنك حذف كائن أو متغير let name = "sharaf"; delete name; هذه الشفرة تعمل بدون الوضعية الصارمة ولكن بعد تفعيل الوضعية الصارمة سيحدث خطأ لأنك حاولت أن تحذف المتغير name وهذا لا يعُد مقبولاً في الوضعية الصارمة لا يمكنك إستخدام النظام الثماني let octa_number = 010; هذه الشفرة ستتسبب في خطأ عند تفعيل الوضعية الصارمة لأن القيمة 010 تعد في النظام الثماني ليس العشري لا يمكنك الكتابة إلى كائن قمت بتعريفه مسبقاً بأنه مُعد للقراءة فقط "use strict"; const car = {}; Object.defineProperty(car, "name", {value:"bmw", writable:false}); car.name ="kia"; تلك الشفرة أيضا ستتسبب بخطأ عند إستخدام الوضعية الصارمة بسبب محاولتك للتعديل على كائن مُعد للقراءة فقط ويوجد العديد من القواعد الأخرى ,حتى لا أقوم بتشتيتك سأترك لك رابط ينص على القواعد جميعها اما عن فائدة هذه الوضعية فيمكن تلخيصها في الآتي: تقوم بإزالة ما يسمى بالأخطاء الصامتة, وهي تلك الأخطاء التي قد تسبب مشاكل في الشفرة مستقبلاً ولكن لا توقف تنفيذه فبالتالي تتحول الي bugs تجبرك على كتابة شفرة نظيفة منظمة قابلة للقراءة بسهولة تحسن من أداء الشفرة حيث أن عمليات التحسين "optimizations" يستطيع المحرك أن يحددها ويقم بها بسهولة أكبر عند تفعيل هذه الوضعية وها هو رابط يحتوي على قواعد الوضع الصارم https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode وتلك مقالة من اكاديمية حسوب تشرح الوضع الصارم اقتباس
السؤال
مروان محمود3
ما معنى ال use strict فى لغة الجافاسكريبت
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.