就像下面的node.js文件中的代码:
function test() {
console.log(typeof this)
}
代码结果为
object
我知道,如果代码在浏览器中运行,则此功能将绑定到默认的窗口对象。显然结果是对象
但是node.js文件绑定的功能是什么?
提前致谢!
最佳答案
不使用strict mode
时,this
将是所有模块共享的全局对象。
在以下示例中,node js1.js
应该显示true:
// js1.js
const logT2 = require("./js2").logT2;
function logT1() {
return this;
}
const thisInT1 = logT1();
const thisInT2 = logT2();
console.log(thisInT1 === thisInT2 && typeof thisInT1 === "object");
// js2.js
function logT2() {
return this;
}
exports.logT2 = logT2;