您好,登錄后才能下訂單哦!
這篇文章主要介紹了const命令在JavaScript中的作用是什么,此處通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考價值,需要的朋友可以參考下:
JavaScript是一種直譯式的腳本語言,其解釋器被稱為JavaScript引擎,是瀏覽器的一部分,JavaScript是被廣泛用于客戶端的腳本語言,最早是在HTML網頁上使用,用來給HTML網頁增加動態功能。
const 定義
const聲明一個只讀的常量 。一旦聲明, 常量的值就不能改變。
常量 所謂的常量就是不能改變的值
const PI = 3.1415; PI // 3.1415 PI = 3; // TypeError: Assignment to constant variable.
上面代碼表明改變常量的值會報錯。
const聲明的變量不得改變值,這意味著,const一旦聲明變量,就必須立即初始化,不能留到以后賦值。
我們都知道const一般聲明一個只讀的常量,聲明之后就不能修改了,并且聲明時必須初始化
const message = 'hello' message // hello
const message // 報錯SyntaxError: Missing initializer in const declaration
const message = 'hello' message ='world' // 報錯TypeError: Assignment to constant variable.
那大家有沒有遇到這樣的情況
const dog = {} dog.name = 'wangcai' dog // {name: "wangcai"}
奇怪,上面的例子明明改變了變量的值,為什么沒有報錯?
下面我們就探究一下const的本質
本質
其實const保證的并不是變量的值不動,而是變量指向的內存地址不得改動
可能有點抽象,我們來細細分析一下const聲明的全過程
const message = 'hello'
js看到變量message后,會給message分配一個空房間(內存空間)
看到等號右側的字符串‘hello'時,會立馬給它安排另一個房間,并把‘hello'放到這個房間
js會拿小本本抄下這個房間的房間號(內存地址)
把這個房間號放到message這個房間里面,這時message中存儲的就是hello字符串的存儲地址(即指針)
當我們再次賦值時
message = 'word'
js會將存儲‘word'字符串的地址賦給message,而message又是用const定義的變量,不可以改變變量里存儲的內存地址,這時就會?報錯
而當遇到下面這種情況
const dog = {} dog.name = 'wangcai' dog // {name: "wangcai"}
則可以理解為
dog中存儲的是對象的房間號(內存地址)
dog.name= 'wangcai',在給對象添加屬性的過程,并沒有改變這個地址,所以結果正常顯示
劃重點
const保證的并不是變量的值不動,而是變量指向的內存地址不得改動
到此這篇關于const命令在JavaScript中的作用是什么的文章就介紹到這了,更多相關const命令在JavaScript中的作用是什么的內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。