JSON问题

var a={"a":"a","b":"b"};

var b=a;

delete a.a;

console.log(b);

为什么结果是{"b":"b"}


倚天杖
浏览 428回答 1
1回答

斯蒂芬大帝

在 js 中,对象类型的数据是引用类型值。保存在对象变量中的是对象的引用。引用类型值是保存在堆内存中的对象,引用类型值的变量在栈内存中保存该值的内存地址,从而访问引用类型值。引用类型值是按引用访问的。当把 a 值赋值给 b 时,b 也只是获得了这个内存地址,即 a 和 b 实际上指向的是同一个内存中的对象。所以当操作 a 改变了这个对象的值时,变量 b 所指向的对象也会发生变化。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript