آموزش جاوا اسکریپت

کلمه کلیدی const در جاوا اسکریپت

آموزش جاوا اسکریپت از مبتدی تا حرفه ای

کلمه کلیدی const در جاوا اسکریپت ، موضوع درس امروز ما در مجموعه آموزش های جاوا اسکریپت است.

در نسخه ECMAScript 2015 به بعد، کلمات کلیدی let و const در جاوا اسکریپت ارائه شدند، در درس قبل مباحث مربوط به کلمه ی کلیدی let و تفاوت آن با var  را آموزش دادیم.

در این درس قصد داریم کلمه کلیدی const و کاربردهای آن را برای شما توضیح دهیم.

متغیرهای تعریف شده با const رفتار هایی مانند متغیر های تعریف شده با let دارند، بغیر از اینکه آنها نمی توانند مقدار دهی مجدد شوند:

مثال

خودتان آزمایش کنید

محدوده بلوک یا Block Scope

از نظر قوانین دامنه بلوک یا Block Scope ، قوانین اعلام متغیر با const مشابه let است.

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

مثال

خودتان آزمایش کنید

در درس قبلی می توانید اطلاعات بیشتری در مورد دامنه بلوک یا Block Scope و کلمه کلیدی Let کسب کنید :


در هنگام تعریف باید مقدار دهی شود

ثابت یا const در جاوا اسکریپت در هنگام تعریف ، باید مقدار دهی نیز بشود:

غلط

درست


ثابت های واقعی نیستند

کلمه کلیدی const کمی گمراه کننده است.

این کلمه کلیدی یک مقدار ثابت را تعیین نمی کند بلکه یک ارجاع ثابت به یک مقدار را تعریف می کند.

به همین دلیل ، ما نمی توانیم مقادیر اولیه ثابت را تغییر دهیم ، اما می توانیم خصوصیات اشیاء ثابت را تغییر دهیم.


مقدار های اولیه

اگر مقدار اولیه ای را به یک ثابت اختصاص دهیم ، نمی توانیم مقدار اولیه را تغییر دهیم: 

مثال

خودتان آزمایش کنید

اشیاء ثابت می توانند تغییر کنند

می توانید خصوصیات یک شیء ثابت را تغییر دهید:

مثال

خودتان آزمایش کنید

اما شما نمی توانید یک شیء ثابت را مجددا تعریف کنید:

مثال

خودتان آزمایش کنید

آرایه های ثابت می توانند تغییر کنند

شما می توانید عناصر یک آرایه ثابت را تغییر دهید:

مثال

خودتان آزمایش کنید

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

مثال

خودتان آزمایش کنید

پشتیبانی مرورگر

کلمه کلیدی const در Internet Explorer 10 یا قبل از آن پشتیبانی نمی شود.

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

کروم اینترنت اکسپلورر فایرفاکس سافاری اُپرا
Chrome 49 IE / Edge 11 Firefox 36 Safari 10 Opera 36
Mar, 2016 Oct, 2013 Feb, 2015 Sep, 2016 Mar, 2016


تعریف مجدد

تعریف مجدد متغیر با کلمه کلیدی var در هر جای برنامه جاوا اسکریپت مجاز است:

مثال

تعریف مجدد یا مقدار دهی مجدد یک متغیر ایجاد شده با var یا let توسط کلمه کلیدی const، در همان دامنه یا در همان بلوک مجاز نیست:

مثال

تعریف مجدد یا مقدار دهی مجدد یک متغیر const موجود ، در همان دامنه یا در همان بلوک مجاز نیست:

مثال

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

مثال


بالا بردن یا Hoisting

متغیرهای تعریف شده با var در دامنه خود به بالا برده می شوند. (اگر نمی دانید بالا بردن یا Hoisting در جاوا اسکریپت چیست؟ روی لینک آن کلیک کنید).

بعبارتی دیگر قبل از اعلام یک متغیر با کلمه کلیدی var، می توانید از آن متغیر استفاده کنید :

مثال

خودتان آزمایش کنید

متغیرهای تعریف شده با const ، بالا برده نمی شوند.

متغیر const نمی تواند قبل از تعریف ، استفاده شود:

مثال

منبع : W3Schools.com


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *