终端,浏览器和小提琴中的“this”的不同输出(Javascript)

时间:2017-06-20 13:24:00

标签: javascript

我正在玩这个代码片段的Javascript:

function personDetails(age) {
  var param = "The age of " + this.name + ' is ' + age;
  return param;
}
var details = personDetails(26);
console.log(details);

'this'没有为该函数定义。 (是的,该函数应该与call和apply方法一起使用)。

但是我很好奇,当我在终端,浏览器(通过.html文件加载)和小提琴中运行它时,我得到不同的输出。

使用node在终端中运行会给出o / p:未定义的年龄为26。

在浏览器中运行(通过.html文件加载):年龄为26岁。

在小提琴中奔跑:结果的年龄是26岁。

我很好奇为什么“未定义”在终端中,为什么浏览器中没有任何内容以及为什么“结果”在小提琴中。

0 个答案:

没有答案