在Chrome控制台上执行以下代码时,它按预期工作:
function printNameWithAdj(adjective) {
alert(this.name + " is " + adjective);
}
var name = "john";
printNameWithAdj.call(this, "nice");
并打印"john is nice"
。
但是当在JSFiddle中运行它时,它会给出"result is nice"
。
result
来自何处,以及环境/引擎之间差异的原因是什么?