Js中的原始值与对象有着根本的区别。原始值是不可更改的:任何方法都无法更改一个原始值。对数字和布尔值来说显然如此--改变数字的值本身就说不通,而对字符来说就不那么明显了,因为字符串看起来像由字符组成的数组,我们期望可以通过制定索引来修改字符串中的字符。实际上,JS是禁止这样做的。字符串中所有的方法看上去返回了一个修改后的字符串,实际上返回的是一个新的字符串值。
原始值的比较是值的比较:只有在它们的值相等时它们才相等。这对数字、布尔值、null和undefined来说听起来有点儿难懂,并没有其他办法来比较它们。同样,对于字符串来说则并不明显:如果比较两个单独的字符串,当且仅当它们的长度相等且每个索引的字符都相等时,JS才认为它们相等。
对象和原始值不同,首先,它们是可变的--他们的值是可以修改的。
对象的比较并非值的比较:即使两个对象包含同样的属性及相同的值,他们也是不相等的。各个索引元素完全相等的两个数组也不想等。
武汉网站建设领导品牌!武汉网站建设首选珞珈学子网络科技,精英技术团队,技术咨询电话:027-68772750 13618602336