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 - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

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

نظرات

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

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