重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
這篇文章主要介紹了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中的作用是什么的內容請搜索創新互聯以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持創新互聯!