درس ۹: متغیرهای ثابت (JS Const)
کلمه کلیدی const برای تعریف متغیرهایی استفاده میشود که مقدار آنها ثابت و غیرقابل تغییر است.
- این متغیرها نمیتوانند دوباره مقداردهی شوند.
- این متغیرها نمیتوانند دوباره تعریف شوند.
- این متغیرها دارای محدوده بلوکی (Block Scope) هستند.
۱. مقداردهی هنگام تعریف
متغیرهای const باید دقیقاً در لحظه تعریف، مقداردهی شوند. شما نمیتوانید تعریف و مقداردهی را از هم جدا کنید:
// صحیح
const PI = 3.141592653589793;
// غلط
const PI;
PI = 3.14; // این خط باعث ایجاد خطا میشود
۲. چه زمانی از Const استفاده کنیم؟
به عنوان یک قاعده کلی، همیشه متغیرها را با const تعریف کنید، مگر اینکه بدانید مقدار آن تغییر خواهد کرد. از const برای موارد زیر استفاده میشود:
- یک آرایه جدید (Array)
- یک شیء جدید (Object)
- یک تابع جدید (Function)
- یک عبارت منظم جدید (RegExp)
۳. اشیاء و آرایههای ثابت
کلمه کلیدی const کمی گولزننده است! این کلمه به این معنی نیست که مقدار تغییرناپذیر است، بلکه به این معنی است که ارجاع به آن آدرس تغییرناپذیر است.
بنابراین شما میتوانید اعضای یک آرایه یا ویژگیهای یک شیء ثابت را تغییر دهید:
// تعریف آرایه ثابت
const cars = [“Saab”, “Volvo”, “BMW”];
// تغییر یک عضو آرایه:
cars[0] = “Toyota”;
// اضافه کردن یک عضو:
cars.push(“Audi”);
// اما نمیتوانید کل آرایه را دوباره مقداردهی کنید:
cars = [“Toyota”, “Volvo”]; // خطا میدهد
۴. محدوده بلوکی
مشابه let، متغیرهای const هم فقط داخل بلوک { } خودشان اعتبار دارند:
const x = 10;
{
const x = 2;
// در اینجا x برابر ۲ است
}
// در اینجا x برابر ۱۰ است