我想知道是否有人可以帮助我理解为什么函数内的名称与函数外的名称变量无关。如果您想在函数中更改 name 的全局变量怎么办,有什么办法吗?
var name = "Paul";
function test(name){
name = name || 'You';
console.log(name);
}
test('Mario');
console.log(name);
更新:感谢大家的快速回复。因此,如果您逐行运行它,这是怎么回事?
一旦将 Mario 传递给函数,它会用传递给函数的名称替换所有 name 实例?所以反过来你得到:
"Mario" = "Mario" || 'You';
但如果你什么都不通过:
test();
那不就是名字=名字吗?为什么要|| 陈述?