js中使用const聲明變量時需要注意


const實際上保證的,並不是變量的值不得改動,而是變量指向的那個內存地址(初始化的內容)不得改動。對於簡單類型的數據(數值、字符串、布爾值),值就保存在變量指向的那個內存地址,因此等同於常量。

簡單類型的數據(數值、字符串、布爾值):

const a = 1;  //相當於聲明常量(常量一旦聲明就不可以修改)

console.log(a); //1

a=2;//運行時就報錯(對常量變量賦值)

console.log(a); //報錯

 

但對於復合類型的數據(主要是對象和數組),變量指向的內存地址(初始化的內容),保存的只是一個指針,const只能保證這個指針是固定的,至於它指向的數據結構是不是可變的,就完全不能控制了。

簡單來說就是不能再將其聲明為其他對象或重新給它賦值,但是可以進行添加修改刪除屬性等

const b = {'name':"lisi"};

console.log(b.name);

添加一個屬性

b.prop = 9;

console.log(b.prop);

delete b.prop

console.log(b.prop);

數組也是和對象一樣的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM