js函数传参
题目
function use(obj) {
obj.name = '陈架构';
obj = new Object();
obj.name = '任架构';
}
let person = new Object();
use(person);
console.log(person.name);
答案
陈架构
解析
js函数传参是引用传递,不允许值传递,当函数内部想要修改传入的参数时,都会自动在函数内部先构造一个新变量,然后给它赋值。
题目中的代码含义和以下代码是一样的:
function use(obj) {
obj.name = '陈架构';
newObj = new Object();
newObj.name = '任架构';
}
let person = new Object();
use(person);
console.log(person.name);