JavaScript读书笔记(四)原始值与对象

参照内容来自《JavaScript权威指南》

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

JavaScript中的原始值包括undefined,null,布尔值,数字和字符串。原始值是不可更改的,原始值中的字符串也是不可修改的,字符串中的所有方法只是返回一个新字符串。

对象的值是可修改的,对象通常被称为引用类型,以区分JavaScript的基本类型。对象的值称为引用,对象间的比较称为引用的比较。

对象之间如何进行比较:对象的比较并非值的比较,两个对象包含同样的属性和相同的值也不一定相等。只有当它们引用同一个基对象时,才相等。例如:

var a = [ ]; //定义一个空数组

var b = a; //变量b引用同一数组

b[0] = 1; // 修改b[0]的值,此时a[0]也会随之发生变化,a[0]的值此时也变为1

a与b是相等的,这不同于副本。如果是副本,则两者在进行引用的比较时,是不相等。

下面是副本:

var a = [11, 12, 13];

var b = [ ];

for(var i = 0;  i < a.length;  i++){

     b[i] = a[i];

}//这样b是a的副本,两者在值上的比较是相等的,但在引用的比较上是不相等的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值