JS Const Тогтмол хувьсагч
ESMAScript 2015-аас JavaScript-д let
болон const
гэдэг чухал хоёр шинэ түлхүүр үг нэмэгдсэн.
Эдгээр түлхүүр үгийн хамрах хүрээ нь Блок дотор хамаарах болно.
ESMAScript 2015-аас өмнө Глобал болон Функц дотор л гэсэн ойлголт байсан.
const
түлхүүр үгээр зарласан хувьсагчийн анхны утгыг өөрчлөх боломжгүй.
Блок орчин
const
нь let
-тэй мөн адил блок орчинд зарласан хувьсагч блокийн гадна зарласан хувьсагчаас ялгаатай байна.
Жишээ нь
var n = 130;
/* Энэ үед n 130 байна */
{
const n = 15; /* Энэ үед n 15 байна */
}
/* Энэ үед n 130 байна */
Блок орчны талаар илүү дэлгэрэнгүйг JavaScript Let Хувьсагч хичээлээс үзээрэй.
Const Хувьсагчид утга олгох
const
хувьсагчийг зарлахдаа шууд утга олгоно.
Буруу
const n;
n = 15;
Зөв
const n = 15;
Тотмол биш
const
түлхүүр үг нь өмнө зарласан тогтмол утгыг тодорхойлдоггүй.
Өөрөөр хэлбэл анх зааж өгсөн утга гэж ойлгож болно.
Гэхдээ тогтмол объектын шинж чанаруудыг өөрчилж болно.
Өмнө зарласан тогтмол утга
Өмнө зарлагдсан тогтмол утгыг бид өөрчлөх боломжгүй.
Жишээ нь
const n = 130;
n = 15; /* Энэ үед алдаа өгнө */
n = n + 15; /* Энэ үед алдаа өгнө */
Тогтмол объект
Тогтмол объектын шинж чанарыг бид өөрчилж чадна.
Жишээ нь
/* Тогтмол объект үүсгэж байна */
const phone = {turul:"ухаалаг", model:"12", ungu:"Цэнхэр"};
/* Объектын шинж чанарыг өөрчилж байна. */
phone.ungu = "Улаан";
/* Объектод шинж чанар нэмж болно. */
phone.ezen = "Болд";
Өмнө зарласан тогтмол объект
Өмнө зарлагдсан тогтмол утгыг бид өөрчлөх боломжгүй.
Жишээ нь
const phone = {turul:"ухаалаг", model:"12", ungu:"Цэнхэр"};
phone = {turul:"ухаалаг", model:"12", ungu:"Улаан"}; /* Алдаа өгнө */
Тогтмол массив
Тогтмол массивын элементийг бид өөрчилж чадна.
Жишээ нь
/* Тогтмол массив үүсгэж байна */
const phones = ["Sumsung", "Iphone", "Nokia"];
/* Массивын элементийг өөрчилж байна. */
phones[2] = "Huwai";
/* Массивд элемент нэмж байна. */
phones.push("Ehlel");
Өмнө зарлагдсан тогтмол утгыг бид өөрчлөх боломжгүй.
Жишээ нь
const phones = ["Sumsung", "Iphone", "Nokia"];
phones = ["Sumsung", "Iphone", "Ehlel"]; /* Алдаа өгнө */
Дахин зарлах
JavaScript програмд хувьсагчийг var
үгээр зарлавал хэзээ ч хаан ч зарлаж болно.
Жишээ нь
var n = 5 /* Зөвшөөрнө */
var n = 8 /* Зөвшөөрнө */
n = 9 /* Зөвшөөрнө */
const
болон var
үгийг нэг түвшинд зарлах болохгүй.
Жишээ нь
var n = 5 /* Зөвшөөрнө */
const n = 8 /* Зөвшөөрөхгүй */
{
var n = 5 /* Зөвшөөрнө */
const n = 8 /* Зөвшөөрөхгүй */
}
Жишээ нь
const n = 5 /* Зөвшөөрнө */
const n = 8 /* Зөвшөөрөхгүй */
n = 9 /* Зөвшөөрөхгүй */
var n = 8 /* Зөвшөөрөхгүй */
let n = 3 /* Зөвшөөрөхгүй */
{
const n = 5 /* Зөвшөөрнө */
const n = 8 /* Зөвшөөрөхгүй */
n = 9 /* Зөвшөөрөхгүй */
var n = 8 /* Зөвшөөрөхгүй */
let n = 3 /* Зөвшөөрөхгүй */
}
const
түлхүүр үг нь өөр өөр орчинд байвал зөвшөөрөх болно.
Жишээ нь
const n = 5 /* Зөвшөөрнө */
{
const n = 8 /* Зөвшөөрнө */
}
{
const n = 8 /* Зөвшөөрнө */
}