javascript的Object引用引用有什么例外?

时间:2019-03-09 06:56:48

标签: javascript object pass-by-reference

考虑两个片段

const sayMyName = wizard => {
  wizard.name = 'Shazam';
}

let boy = { name: 'Billy' };

sayMyName(boy);

console.log(boy.name);

由于我们知道js中的对象是通过引用传递的,因此对男孩对象的引用被分配了一个值为'Shazam'的属性。由于存储的参考处的对象已更改,因此男孩的名字更改为“ Shazam”。

const sayMyName = wizard => {
  wizard = { name: 'Shazam' };
}

let boy = { name: 'Billy' };

sayMyName(boy);

console.log(boy.name);

考虑上述情况,这里当Boy在sayMyName函数中传递时,为什么它按值传递,而boy.name仍返回“ billy”?

0 个答案:

没有答案