Übergabe des Fensters undefiniert an eine sofort aufgerufene anonyme Funktion. Warum? [Duplikat]

8

Ich habe gesehen, jQuery Quellcode tut dies:

%Vor%

Ich verstehe warum es sinnvoll ist, undefined einzuschließen, wenn sich jemand vorher "undefiniert" ändert. Aber Fenster kann nicht geändert werden. Soweit ich weiß, muss es nicht einmal benutzt werden, oder? Wie könnte das nützlich sein?

    
Enrique Moreno Tent 26.11.2011, 01:35
quelle

2 Antworten

16

Mikrooptimierung.

% code_% als lokale Variable ist geringfügig schneller als eine globale Variable.

Es verkleinert auch besser. Wir können nun den Funktionsparameter auf window reduzieren und w etc anstelle von w.setTimeout verwenden.

Weniger Bytes = besser

    
Raynos 26.11.2011, 01:39
quelle
9

Nicht nur das, was Raynos gepostet hat, sondern es schützt auch Ihren Code vor Leuten, die so etwas in anderen Bibliotheken tun, die sich auf Ihrer Seite befinden oder auf andere Weise auf die Seite zugreifen:

%Vor%

Mit anderen Worten, es schützt Sie vor anderen Leuten, die dumme Dinge wie das Umdefinieren allgemeiner globaler Variablen oder Objekte tun.

    
Bert 26.11.2011 01:49
quelle

Tags und Links