JavaScript数据类型及赋值问题 财富值36

2016-10-13 11:42发布

JavaScript生成对象并进行赋值弹出
相关代码如下:

var a=new Object(); a.value=1;   b=a; b.value=2; alert(a.value);

如何解释最终结果为2?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答

a是对象,所以a应该是保存了一个地址,这个地址指向了a存储的实际内容,b=a并不是将a指向地址的内容复制给b而是把a保存的地址给了b,即使得b与a指向同一个地址(a存储的实际内容),所以b.value=2设置的是a存储的实际内容,a存储的实际内容的值改变了,所以a.value也改变了。
详细的话可以百度下js传值和传址

一周热门 更多>