function foo(obj) {
obj.x=100;
}
var obj = new Object();
obj.x=1;
foo(obj);
console.log(obj.x); // obj.x被修改为100.
//===================================
function foo1(obj1){
obj1 = {x:100};
}
var obj1 = {x:1};
foo1(obj1);
console.log(obj1.x); //obj1.x为1
上面两段代码,为何结果不同?求解,谢谢......
上面那个相当于这样:
下面那个则是这样:
所有的对象在js中,都是引用类型变量。