小编Ami*_*ena的帖子

将值传递给函数参数

我有一个人的代码,用于设置新对象的名称.

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'.我哪里错了?

javascript arguments function parameter-passing

0
推荐指数
1
解决办法
39
查看次数