You are currently viewing حالت مدرن “استفاده از سخت” در جاوا اسکریپت

حالت مدرن “استفاده از سخت” در جاوا اسکریپت


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

این شرایط قبل از نسخه استاندارد ECMA ECMAScript 5 (ES5) وجود داشت. با آمدن استاندارد جدید، ویژگی های زیادی به زبان جاوا اسکریپت اضافه شد و حتی برخی از ویژگی های قدیمی تغییر کردند و برای اینکه کدهای قدیمی به درستی کار کنند، این تغییرات جدید به صورت پیش فرض غیرفعال می شوند. برای فعال کردن تغییرات جدید، باید در ابتدای کد جاوا اسکریپت خود از “use strict” استفاده کنید.

“به شدت استفاده کنید”

به حالت مدرن را در جاوا اسکریپت فعال کنید باید یک عبارت رشته ای باشد "use strict" یا 'use strict' آن را در خط بالایی و در ابتدای کد قرار دهید، به عنوان مثال:

"use strict";
// this code works the modern way
...

به زودی با توابع آشنا خواهیم شد و از آنها برای بخش بندی کد و فرآیند حل مسئله استفاده خواهیم کرد. تو می توانی “use strict” در ابتدای کد تابع قرار دهید تا فقط این حالت در تابع فعال شود، اما اغلب در ابتدای همه کدها قرار داده می شود.

نکته اول: مطمئن شوید “use strict” در ابتدای کد قرار می گیرند

در غیر این صورت حالت پیشرفته فعال نخواهد شد. برای مثال در کد زیر حالت پیشرفته فعال نخواهد شد.

alert("some code");
// "use strict" below is ignored--it must be at the top

"use strict";

// strict mode is not activated

تنها چیزی که می تواند قبل از “use strict” قرار داده شود نظرات هستند.

نکته دوم: امکان لغو حالت مدرن در جاوا اسکریپت وجود ندارد

به عنوان مثال کد مانند "no use strict" هیچ راهی برای غیرفعال کردن حالت مدرن از یک نقطه به بعد وجود ندارد، در واقع حالت مدرن فقط در ابتدای کد است و می توانید تصمیم بگیرید که آن را فعال یا غیرفعال کنید.

کنسول توسعه دهنده درون مرورگر

هنگام استفاده از کنسول توسعه دهنده برای اجرای کد، به طور پیش فرض این را به خاطر بسپارید “use strict” معلول. برای فعال سازی و تست کد در کنسول مرورگر، ابتدا باید کد زیر را بنویسید، یعنی ابتدا عبارت “use strict” نوع و s Shift+Enter به خط بعدی بروید و کد خود را وارد کنید و در نهایت آن را اجرا کنید:

'use strict'; <Shift+Enter for a newline>
//  ...your code
<Enter to run>

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

(function() {
  'use strict';

  // ...your code here...
})()

باید از “use strict” باید استفاده کنیم

آیا قبل از نوشتن هر کد جاوا اسکریپت به یک عبارت اولیه نیاز دارید؟ “use strict” در کد خود بنویسید تا حالت مدرن فعال شود؟ برای پاسخ به این سوال ابتدا باید بگویم که با استفاده از بسیاری از ویژگی های جدید ECMA مانند کلاس ها و ماژول ها، حالت مدرن به طور خودکار فعال می شود و نیاز به استفاده از “use strict” نیست.

در این دوره آموزشی جاوا اسکریپت، فرض ما استفاده از حالت مدرن در تمامی کدها است و به ندرت از کدهای قدیمی استفاده می کنیم و در صورت لزوم تفاوت این دو را بررسی می کنیم.

خلاصه درس:

با معرفی نسخه های جدید و استاندارد شده در سال های اخیر، تعدادی از کدهای قدیمی جاوا اسکریپت دستخوش تغییراتی شده اند، این تغییرات ممکن است بر روی کدهای نوشته شده با نسخه های قدیمی جاوا اسکریپت تاثیر منفی بگذارد، بنابراین حالتی به نام حالت مدرن وجود دارد. ، که به طور پیش فرض غیرفعال است و با فعال کردن آن تغییرات جدید در اختیار توسعه دهنده قرار می گیرد. برای فعال کردن حالت پیشرفته دستورالعمل “use strict” در ابتدای کد از آن استفاده می کنیم.

تمرینات درسی:

  • سعی کنید با جستجو برخی از دستورات تغییر یافته در نسخه Ecma را پیدا کرده و مقایسه کنید.

تست درس:

اگر مطالب بالا را به خوبی درک کرده اید و برای درس بعدی آماده هستید، بهتر است قبل از رفتن به درس بعدی خود را با تست ساده زیر محک بزنید.

تست درس در حالت مدرن در جاوا اسکریپت گوگل