版权声明: https://blog.csdn.net/qq_41912125/article/details/80933998
function setName(obj){
obij.name="Nicholas";
obj=new Object();
obj.name="Dangyunkai"; //局部 对象
}
var person = new Object ();
setName(person);
alert(person.name); //“Nicholas”
先把person传到setName里边,改变其name的值。又将一个新的对象赋值给了obj,同时将其name的属性设置为“Dangyunkai”。但person.name值并没有改变。
表明,即使在函数内部修改参数的值,但原始的引用仍然不变。实际上,当在函数内部重写obj是,这个变量引用的就是一个局部对象了。而这个局部对象会在函数执行完毕后自动销毁。