JavaScript – کلمه کلیدی Const در جاوااسکریپت (Const)

معرفی

const یکی از کلمات کلیدی معرفی شده در ES6 (سال 2015) است. این کلیدواژه برای تعریف متغیرهایی استفاده می‌شود که نباید بازتعریف یا مقداردهی مجدد شوند و دارای اسکوپ بلوکی هستند.

ویژگی‌های اصلی const

1. نمی‌توان آن را بازتعریف کرد

متغیری که با const تعریف شده باشد، نمی‌تواند دوباره در همان اسکوپ تعریف شود:

const x = 5;
const x = 10; // خطا

2. نمی‌توان مقداردهی مجدد انجام داد

بعد از تعریف یک متغیر با const، نمی‌توان مقدار آن را تغییر داد:

const PI = 3.14;
PI = 3.15; // خطا

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

متغیرهای const الزاماً باید در لحظه تعریف مقداردهی شوند:

// درست
const PI = 3.14;

// نادرست
const PI;
PI = 3.14; // خطا

موارد استفاده از const

زمانی که مطمئن هستید مقدار یک متغیر نباید تغییر کند، از const استفاده کنید.
به‌ویژه برای تعریف:

  • آرایه‌ها
  • اشیاء
  • توابع
  • عبارات منظم (RegExp)

آرایه‌ها و اشیاء ثابت

آرایه‌های ثابت

در const، مرجع آرایه ثابت است، اما می‌توان عناصر آرایه را تغییر داد:

تغییر عناصر یا افزودن عنصر:

const cars = ["Saab", "Volvo", "BMW"];
cars[0] = "Toyota"; // مجاز
cars.push("Audi");  // مجاز

تغییر مرجع آرایه:

const cars = ["Saab", "Volvo"];
cars = ["Toyota", "Audi"]; // خطا

اشیاء ثابت

مشابه آرایه‌ها، مرجع شیء ثابت است، اما می‌توان خواص آن را تغییر داد:

تغییر خواص یا افزودن خواص جدید:

const car = { type: "Fiat", color: "white" };
car.color = "red";          // مجاز
car.owner = "Johnson";      // مجاز

تغییر مرجع شیء:

const car = { type: "Fiat" };
car = { type: "Volvo" };    // خطا

مقایسه var، let و const

ویژگی var let const
اسکوپ Function Block Block
بازتعریف بله خیر خیر
مقداردهی مجدد بله بله خیر
Hoisting بله خیر خیر

نکات Hoisting

متغیرهای var در زمان Hoisting به بالای اسکوپ منتقل می‌شوند و مقداردهی می‌توانند شوند:

carName = "Volvo";
var carName; // مجاز

اما متغیرهای const به بالا منتقل می‌شوند ولی مقداردهی نمی‌شوند. استفاده از آن‌ها قبل از تعریف، خطای ReferenceError می‌دهد:

console.log(carName); // خطا
const carName = "Volvo";

نتیجه‌گیری

استفاده از const به دلیل مزایایی مانند:

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

توصیه می‌شود هر زمان که نیاز به متغیری ثابت دارید، از const استفاده کنید.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - رویدادها (Events)

JavaScript – رویدادها (Events)

رویدادهای HTML رویدادها در HTML، “اتفاقاتی” هستند که برای عناصر HTML رخ می‌دهند. این اتفاقات می‌توانند ناشی از کار...

بیشتر بخوانید
JavaScript - سازنده‌های شیء (Object Constructors)

JavaScript – سازنده‌های شیء (Object Constructors)

ساخت آبجکت با تابع سازنده (Object Constructor Function) برای ساخت چندین آبجکت مشابه، از تابع سازنده استفاده می‌شود. این...

بیشتر بخوانید
JavaScript - نمایش شیء (Object Display)

JavaScript – نمایش شیء (Object Display)

نحوه نمایش آبجکت‌ها در جاوااسکریپت هنگام نمایش یک آبجکت جاوااسکریپت به صورت مستقیم، خروجی معمولاً به شکل [object Object]...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.