我想运行此代码,但它在第二个控制台日志中给我未定义的输出,而不是 Oracle,因为我试图从 var 调用它并引用全局 var 和 this 关键字检索名称。
this.name = "Oracle";
var website = {
name: "Java",
getName: function () {
return this.name;
},
};
console.log(website.getName()); // Java
var retrieveName = website.getName; //
console.log(retrieveName()); // Oracle but its printing undefined
var boundGetName = retrieveName.bind(website);
console.log(boundGetName()); // Java
[收到输出][1]
我在 Node.js 中运行代码,这就是为什么它似乎在全局 var 访问上提供错误。现在我以草率模式运行然后全部清除..