我有一个人的代码,用于设置新对象的名称.
function setName(human) {
human.name = "Nicholas";
human = new Object();
human.name = "Greg";
};
var newPerson = new Object();
setName(newPerson);
console.log(newPerson.name);
Run Code Online (Sandbox Code Playgroud)
我想使用person对象的属性'name'的值.
我期待价值是'格雷格',但我得到'尼古拉斯'.
这是我的理解:'human'是指向Object的指针.调用该函数时,将通过newPerson的名称创建指向同一Object的另一个指针.
newPerson对象的'name'属性将设置为'Nicholas'.然后,在函数的第二行中创建另一个newPerson对象.因此,应该销毁第一个实例.然后,此新Object的'name'属性将设置为'Greg'.我哪里错了?