В JavaScript, который не работает в строгом режиме ECMAScript 3.1, вы можете ссылаться на глобальный объект, используя ключевое слово this
, но только если не выполняете код внутри функции, которая имеет контекст объекта.
// In global scope:
alert(this.Math === Math); //-> true
function test() {
alert(this.Math === Math);
}
test(); //-> true
var someObj = {};
test.call(someObj); //-> false, `this` is `someObj`
В браузерах, как уже упоминалось в других ответах, объект window
также является глобальным объектом.
alert(this === window); //-> true
alert(this.alert === window.alert); //-> true