2016-10-13 11:42发布
JavaScript生成对象并进行赋值弹出相关代码如下:
var a=new Object(); a.value=1; b=a; b.value=2; alert(a.value);
如何解释最终结果为2?
a是对象,所以a应该是保存了一个地址,这个地址指向了a存储的实际内容,b=a并不是将a指向地址的内容复制给b而是把a保存的地址给了b,即使得b与a指向同一个地址(a存储的实际内容),所以b.value=2设置的是a存储的实际内容,a存储的实际内容的值改变了,所以a.value也改变了。详细的话可以百度下js传值和传址
最多设置5个标签!
a是对象,所以a应该是保存了一个地址,这个地址指向了a存储的实际内容,b=a并不是将a指向地址的内容复制给b而是把a保存的地址给了b,即使得b与a指向同一个地址(a存储的实际内容),所以b.value=2设置的是a存储的实际内容,a存储的实际内容的值改变了,所以a.value也改变了。
详细的话可以百度下js传值和传址
一周热门 更多>