استفاده از عبارت 'use strict' در جاوااسکریپت

برای استفاده از ویژگی های جدید زبان جاوااسکریپت در مرورگرهای امروزی باید از دستور 'use strict' در بالای اسکریپت خود استفاده کنیم. این عبارت باعث می‌شود که حالت مفسر جاوااسکریپت به حالت مدرن تغییر کند.

عبارت use strict

برای مدت طولانی زبان جاوااسکریپت بدون مشکلات سازگاری راه خود را ادامه می‌داد. در طول این دوره ویژگی‌های جدید به زبان اضافه می‌شدند اما عملکردهای قدیمی تغییر نمی‌کردند. مزیتی که وجود داشت این بود که کدهایی که قبلا نوشته شده بود همیشه بدون هیچ مشکلی در نسخه‌های جدید مرورگرها اجرا می‌شد. ایرادی که در این حالت وجود داشت این بود که هر اشتباه و تصمیم ناقصی که توسط سازندگان جاوااسکریپت گرفته می‌شد برای همیشه غیر قابل تغییر بود.

اما این قاعده در سال 2009 با انتشار نسخه (ECMAScript 5 (ES5 تغییر کرد. این نسخه ویژگی‌های جدیدی به زبان افزود و بعضی دیگر از آن‌ها را تغییر داد. برای اینکه کدهایی که قبلا نوشته شده‌اند درست کار کنند بیشتر تغییراتی که در این نسخه از جاوااسکریپت وجود دارند به صورت پیش‌فرض غیرفعال هستند. و هر کسی که تمایل به استفاده از آن‌ها را داشته باشد باید به صورت صریح از عبارت 'use strict' استفاده کند.

عبارت strict رشته ایست به شکل "use strict" یا ' use strict' که در بالای اسکریپت قرار می‌گیرد در این صورت از قواعد جدید زبان استفاده خواهد شد. برای مثال :

'use strict';

// this code works the modern way
...

حتی می‌توان عبارت 'use strict' را در بالای یک تابع قرار داد. در این صورت حالت strict فقط برای تابع مربوطه فعال می‌شود. اما اکثر مردم از این عبارت برای کل سند خود استفاده می‌کنند.

نکته : تابع یا function مجموعه ای از دستورات است که در یک بلاک کد نوشته می‌شود و توسط نام تابع قابل فراخوانی است.


مطمئن شوید که عبارت 'use strict' در بالای اسکریپت قرار گرفته باشد. در غیر اینصورت حالت strict فعال نمی‌شود. در نمونه مثال زیر عبارت strict هیچ تاثیری در کد مربوطه ندارد :

alert(&quotsome code&quot);
// &quotuse strict&quot below is ignored, must be on the top

'use strict';

// strict mode is not activated
نکته : دستوری برای توقف 'use strict' نداریم برای مثال نمی‌توان از 'no use strict' برای توقف آن استفاده کرد.


چه زمانی از حالت سخت‌گیرانه استفاده کنیم؟

برای پروژه‌های بزرگ، تقریبا همیشه! چی بهتر از اینکه با اصولی‌تر و منظم‌تر نوشتن کد توسعه‌ی برنامه رو سریع‌تر و بهینه‌تر کنیم! حتماً می‌دونین که جاوااسکریپت زبانیه که به بعضی از رفتارهای عجیب معروفه و پروژه‌های جاوااسکریپت نسبت به بقیه پروژه‌ها بیشتر در معرض باگ‌ها هستن. برای همین هست که اصلاح‌کننده‌هایی مثل زبان تایپ‌اسکریپت معرفی شدن تا با سخت‌گیری‌های منطقی، از خطاهای پیش پا افتاده جلوگیری کنن. اگه از جاوااسکریپت خام استفاده می‌کنیم بهتره که همیشه این حالت فعال باشه.

امیدوارم از این قسمت هم استفاده کرده باشین. روزتون خوش! ✌️?


خلاصه

  • عبارت 'use strict' حالت هسته ای جاوااسکریپت را به حالت modern تغییر می‌دهد.
  • حالت strict به وسیله عبارت 'use strict' در بالای اسکریپت فعال می‌شود. قابلیت‌هایی مانند کلاس ها و ماژول‌ها در این حالت به صورت اتوماتیک فعال می‌شوند.
  • حالت strict به وسیله بیشتر مرورگرهای امروزی پشتیبانی می‌شود.
  • توصیه می‌شود همیشه از 'use strict' استفاده کنید تمام مثال‌های این آموزش به جز موارد جزئی فرض کرده است که از این عبارت در استفاده شده است.


منبع : learnsource.net