不可变的原始值和可变的对象引用

2018-11-20  本文已影响0人  longMountain

原始值

JavaScript 中的原始值是不可更改的,它们有:undefined,null,布尔值,数字和字符串。
例如:字符串中所有的方法看上去返回了一个修改后的字符串,实际上返回的是一个新的字符串值。

var s = 'hello';                
s.toUpperCase();          // 返回 'HELLO',但并没有改变 s 的值
s                         // => 'hello':原始字符串的值并未改变

对象

对象和原始值不同,它们是可变的,它们的值是可修改的

var o = {x:1};
o.x = 2;

对象的比较并非值的比较,而是引用的比较:当且仅当它们引用同一个基对象时,它们才相等。

上一篇下一篇

猜你喜欢

热点阅读