В соответствии с this explanation in MDN:`this` в глобальном контексте и внутри функции
- в глобальном контексте,
this
относится к глобальному объекту - в контексте функции, если функция вызывается непосредственно, она вновь относится к глобальному объекту
Тем не менее, следующее:
var globalThis = this;
function a() {
console.log(typeof this);
console.log(typeof globalThis);
console.log('is this the global object? '+(globalThis===this));
}
a();
... помещен в файл foo.js
производит:
$ nodejs foo.js
object
object
is this the global object? false
Попробуйте добавить 'console.log (это); console.log (globalThis); 'чтобы увидеть, что они на самом деле являются – mplungjan