ماذا يفعل 'use strict' في JavaScript ولماذا هو مطلوب؟
مرحباً بالجميع! بدأت في تعلم JavaScript ولاحظت أنه في بعض أمثلة الكود، في بداية الملف أو الدالة، يكتبون `'use strict';`. بصراحة، لا أفهم تماماً لماذا هذا مطلوب وماذا يفعل.
جربت كتابة سكريبت بسيط بدون هذا التوجيه، وكان كل شيء يعمل. على سبيل المثال، أنشأت متغيراً عن طريق الخطأ بدون `let` أو `const` أو `var`:
```javascript
function test() {
myVar = 10; // نسيت كتابة let
console.log(myVar);
}
test(); // سيُظهر 10
```
لكن إذا أضفت `'use strict';`:
```javascript
'use strict';
function test() {
myVar = 10; // خطأ!
console.log(myVar);
}
test(); // ReferenceError: myVar is not defined
```
الآن الكود يتوقف مع خطأ. يبدو أنه بدون `'use strict'` كان كل شيء يعمل ببساطة، لكنني سمعت أن المطورين ذوي الخبرة يوصون بشدة باستخدامه. أين المشكلة؟ لماذا يجب أن نعقد حياتنا إذا كان كل شيء يعمل هكذا؟ وما هي "المصائد" الأخرى في JavaScript التي يصلحها؟ ومتى يجب استخدامه — دائماً؟