var player = { score: 3 };
function doStuff(obj) {
obj = {};
}
player = doStuff(player);
这是一个非常简单的问题,我相信有一个非常简单的答案,但我似乎无法通过逻辑来解决问题。末尾的player
返回值返回undefined
。这是我对这里正在发生的事情的看法。var player
被定义并初始化为对象。然后将player
的值重新分配给函数doStuff(player)
值。player
的值是否只是未定义,因为函数调用本身没有返回值?
是的,该值undefined
,因为您的函数不返回任何内容。
True。
例:
var player = { score: 3 };
console.log(player); // player is now Object { score: 3 }
function doStuff(obj) {
obj = {};
}
player = doStuff(player); // player is now replaced by an undefined object
console.log(player)