13618602336

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

2015-01-14 09:22 浏览 次 来源:未知
 Js中的原始值与对象有着根本的区别。原始值是不可更改的:任何方法都无法更改一个原始值。对数字和布尔值来说显然如此--改变数字的值本身就说不通,而对字符来说就不那么明显了,因为字符串看起来像由字符组成的数组,我们期望可以通过制定索引来修改字符串中的字符。实际上,JS是禁止这样做的。字符串中所有的方法看上去返回了一个修改后的字符串,实际上返回的是一个新的字符串值。
    原始值的比较是值的比较:只有在它们的值相等时它们才相等。这对数字、布尔值、null和undefined来说听起来有点儿难懂,并没有其他办法来比较它们。同样,对于字符串来说则并不明显:如果比较两个单独的字符串,当且仅当它们的长度相等且每个索引的字符都相等时,JS才认为它们相等。
    对象和原始值不同,首先,它们是可变的--他们的值是可以修改的。
    对象的比较并非值的比较:即使两个对象包含同样的属性及相同的值,他们也是不相等的。各个索引元素完全相等的两个数组也不想等。

武汉网站建设领导品牌!武汉网站建设首选珞珈学子网络科技,精英技术团队,技术咨询电话:027-68772750  13618602336
 

联系我们

CONTACT US

袁经理: 电话:027-68772750 地址:武汉市洪山区武珞路珞珈山大厦A座1701室 鄂ICP备09016823号-7