国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

JS中的const命令你真懂它嗎

瀏覽:93日期:2024-05-20 15:24:38

const 定義

const聲明一個只讀的常量 。一旦聲明, 常量的值就不能改變。常量 所謂的常量就是不能改變的值

const PI = 3.1415;PI // 3.1415PI = 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保證的并不是變量的值不動,而是變量指向的內存地址不得改動

到此這篇關于JS中的const命令你真懂它嗎的文章就介紹到這了,更多相關JS const命令內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 色网站在线观看 | 直接在线观看的三级网址 | 国产手机精品一区二区 | 亚洲精品一区二区 | 美女一级毛片免费不卡视频 | 日韩美女大全视频在线 | 国产精品成人免费视频 | 伊人色在线视频 | 亚洲爽妇网 | 国产成人久久精品推最新 | 99视频在线播放 | 日本理论片午夜论片 | 欧美日韩性视频一区二区三区 | 色拍自拍亚洲综合在线 | 国产精品久久久久久爽爽爽 | 亚洲欧美日韩高清 | 欧美激情精品久久久久久久久久 | 一本久道综合久久精品 | 亚洲大片 | 欧美成人吃奶高清视频 | 一个人免费观看日本www视频 | 精品国产一区二区三区久久影院 | 亚洲精品国产一区二区 | 成人国产网站 | 一及 片日本| 美国毛片亚洲社区在线观看 | 久青草青综合在线视频 | 成人黄色一级视频 | 国产亚洲精品一区二区久久 | 天堂mv亚洲mv在线播放9蜜 | 三级视频网站在线观看 | 五月激激激综合网色播免费 | 免费一区在线观看 | 男女晚上爱爱的视频在线观看 | 久久久久久久久久综合情日本 | 久久只有精品视频 | 国产三香港三韩国三级不卡 | 欧美日韩一区二区三区在线观看 | 久久精品视频在线播放 | 兔费看全黄三级 | 先锋影音xfyy5566男人资源 |