原始值
JavaScript 中的原始值是不可更改的,它们有:undefined,null,布尔值,数字和字符串。
例如:字符串中所有的方法看上去返回了一个修改后的字符串,实际上返回的是一个新的字符串值。
var s = 'hello';
s.toUpperCase(); // 返回 'HELLO',但并没有改变 s 的值
s // => 'hello':原始字符串的值并未改变
对象
对象和原始值不同,它们是可变的,它们的值是可修改的
var o = {x:1};
o.x = 2;
对象的比较并非值的比较,而是引用的比较:当且仅当它们引用同一个基对象时,它们才相等。