JavaScript «Используйте строгое» и глобальную функцию Nick Find

Я видел функцию, которая была довольно откровенно прекрасной в своей простоте, поскольку она позволила вам найти глобальный объект (который в зависимости от окружающей среды в то время не может быть окном), в то время как в пределах анонимной функции; Однако, когда вы бросаете Javascripts «использовать строго»; Режим он разбивается, из-за оценки ключевого слова «это» изменяется. Было несколько способов достижения этого?

(function () {
    var win = function () {
        return (function () {
                return this;
            }());
        };
    //win now points to the global object no matter where it is called.
}());

Теперь, если они называются в контексте «Использовать строгих», мы теряем описанную функциональность, есть ли эквивалент, который можно сделать в строгом режиме ES5?

для справки

(function () {
    "use strict"
    //code here is in strict mode
}())
7
задан Raynos 18 January 2012 в 21:54
поделиться