Warum ist "das" in einer anonymen Funktion undefiniert, wenn strict verwendet wird?

Warum ist diese in einer anonymen Funktion nicht definiert, wenn mit javascript im strict-Modus? Ich verstehe, warum dies sinnvoll ist, aber ich konnte keine konkrete Antwort.

Beispiel:

(function () {
    "use strict";

    this.foo = "bar"; //*this* is undefined, why?
}());

Test in einem fiddle: http://jsfiddle.net/Pyr5g/1/
Überprüfen Sie heraus die logger (firebug).

InformationsquelleAutor der Frage TJ. | 2012-03-22

Schreibe einen Kommentar