دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۲
  • آبان

جلسه ۴۲ : Strict Mode در جاوا اسکریپت

  • دسته‌بندی‌ها :
جلسه ۴۲ : Strict Mode در جاوا اسکریپت
    • جزئیات
    • نوع محتواآموزش تصویری

      با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
      در این جلسه قصد داریم تا با Strict Mode در جاوا اسکریپت JavaScript  یا دستور “use strict” در جاوا اسکریپت آشنا شویم.

      strict mode یا حالت سخت به حالتی گفته می شود که کد های جاوا اسکریپت با سختگیری بیشتری تفسیر و اجرا می شوند. (مفید برای برنامه نویسی ایمن در جاوا اسکریپت)

      ;”use strict” تعیین می کند که کد جاوا اسکریپت باید در strict mode اجرا شود.

      دستور “use strict” در جاوا اسکریپت

      دستور “use strict” در جاوا اسکریپت یک دستور جدید در نسخه ۵ ECMAScript می باشد.

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

      با strict mode شما به عنوان مثال نمی توانید از متغیر هایی که نعریف نکرده اید استفاده کنید. (این دستور به نوشتن یک کد تمیز و ایمن در جاوا اسکریپت کمک می کند)

      تمام مرورگر های جدید از “use strict” پشتیبانی می کنند:

      DirectiveChromeInternet Explorer / Edge Firefox SafariOpera
      “use strict”۱۳٫۰۱۰٫۰۴٫۰۶٫۰۱۲٫۱

      استفاده از Strict Mode

      strict mode با اضافه شدن “use strict” به اول کد فعال می شود.

      ابتدای اسکریپت محدوه سراسری دارد و به این معنی است که تمام کد در strict mode اجرا خواهد شد.

      مثال : استفاده از use strict
      خودتان امتحان کنید »

      مثال : نمونه دوم استفاده از use strict
      خودتان امتحان کنید »

      اعلام شده در داخل یک تابع، محدوده محلی (تنها کد داخل تابع در strict mode است):

      مثال : حالت سوم
      خودتان امتحان کنید »

      سینتکس استفاده از use strict

      سینتکس، اعلام strict mode، برای سازگاری با نسخه های قدیمیتر جاوا اسکریپت طراحی شده است.

      کامپایل یک عدد صحیح (۵+۴) یا رشته ای با حروف الفبا (“John Doe”؛) در یک برنامه جاوا اسکریپت عوارض جانبی ندارد. به سادگی به یک متغیر غیر موجود کامپایل شده و از بین می رود.

      بنابراین “use strict”؛ تنها برای کامپایلرهای جدید مهم است که آن را درک می  کنند.

      چرا Strict Mode

      strict mode باعث آسان تر نوشته شدن کد امن در جاوا اسکریپت می شود.

      strict mode ساختار های دستوری بد قبلی که پذیرفته می شدند را به خطا های واقعی تبدیل می کند.

      برای مثال در جاوا اسکریپت معمولی اشتباه نوشتن نام یک متغیر آن را تبدیل به یک متغیر سراسری می کند.
      اما در strict mode این کار باعث ایجاد خطا می شود و از ایجاد یک متغیر سراسری به صورت تصادفی جلوگیری می کند.

      درstrict mode هرگونه اختصاص مقدار به متغیر های غیر قابل نوشتن، متغیر هایی که وجود ندارند و یا اشیایی که وجود ندارند، یک خطا را پرتاب خواهد کرد.

      غیر مجاز ها در Strict Mode

      علاوه بر موارد گفته شده، کار های دیگری نیز هستند که یک خطا ایجاد می کند:

      استفاده از متغیر بدون تعریف آن مجاز نیست :

      مثال : استفاده از متغیر بدون تعریف آن
      خودتان امتحان کنید »

      استفاده از آبجکت بدون تعریف آن مجاز نیست:

      مثال : استفاده از ابجکت بدون تعریف
      خودتان امتحان کنید »

      حذف متغیر یا آبجکت نیز مجاز نیست :

      مثال : مجاز نبودن حذف متغیر و یا ابجکت
      خودتان امتحان کنید »

      حذف کردن تابع:

      مثال : حذف تابع مجاز نیست
      خودتان امتحان کنید »

      پارامتر تکراری در تابع:

      مثال : پارامترهای تکراری در تابع مجاز نیست
      خودتان امتحان کنید »

      استفاده از اعداد مبنای هشتی:

      مثال : استفاده از مبنای 8 مجاز نیست
      خودتان امتحان کنید »

      استفاده از مبنای ۸ در قالب رشته ای نیز مجاز نیست :

      مثال : استفاده از مبنای 8 در قالب رشته ای مجاز نیست
      خودتان امتحان کنید »

      اختصاص مقدار به پروپرتی فقط خواندنی:

      مثال : اختصاص مقادیر به خصوصیات read-only مجاز نیست
      خودتان امتحان کنید »

      اختصاص مقدار به خصوصیات get-only مجاز نیست :

      مثال : اختصاص مقدار به خصوصیات getonly
      خودتان امتحان کنید »

      حذف کردن یک پروپرتی غیرقابل حذف:

      مثال : حذف کردن خصوصیت غیر قابل حذف
      خودتان امتحان کنید »

      رشته “eval” نمی تواند به عنوان متغیر استفاده شود:

      مثال : استفاده از رشته ی eval به عنوان متغیر مجاز نیست
      خودتان امتحان کنید »

      رشته “arguments” نمی تواند به عنوان متغیر استفاده شود:

      مثال : استفاده از رشته ی arguments به عنوان متغیر مجاز نیست
      خودتان امتحان کنید »

      دستور with:

      مثال : استفاده از دستور with مجاز نیست
      خودتان امتحان کنید »

      به دلایل امنیتی تابع ()eval نمی تواند متغیری را در محدوه ای که فراخوانی می شود ایجاد کند:

      مثال : محدودیت تابع eval در ایجاد متغیرها
      خودتان امتحان کنید »

      اثبات آینده!

      کلمات کلیدی که برای نسخه های جاوااسکریپت آینده نگهداری می شوند نمی توانند به عنوان نام متغیر در حالت strict mode استفاده شوند.

      اینها هستند:

      • implements
      • interface
      • let
      • package
      • private
      • protected
      • public
      • static
      • yield

      مثال : مثال موارد فوق
      خودتان امتحان کنید »

      اخطار : دستور  “use strict”  فقط در ابتدای یک اسکریپت یا یک تابع شناسایی می شود.

      جلسه استفاده از Strict Mode در جاوا اسکریپت JavaScript به پایان رسید.

      QR:  جلسه ۴۲ : Strict Mode در جاوا اسکریپت
      به اشتراک بگذارید