Problem

Es soll geprüft werden, ob ein Objekt vom Typ Window ist. Intuitiv würde man das mittels instanceof prüfen. Das schlägt aber in manchen Browsern mit einem ReferenceError fehl. Weiter heißt es dann beispielsweise "Undefined variable", "Window is not defined" oder "Can't find variable: Window".

// schlägt in den manchen Browsern mit Fehlermeldung fehl
if (myVar instanceof Window) {
    // Code
}

Lösung

Wenn man eigentlich nur wissen möchte, ob das Objekt dem aktuellen Fenster entspricht, kann man auch statt zu prüfen, ob das Objekt vom Typ Window ist, direkt prüfen, ob das Objekt das aktuelle Fenster ist. Auf das aktuelle Fenster hat man per window, self und - sofern man sich nicht innerhalb einer Funktion befindet - this Zugriff.

// Prüfen ob Objekt das aktuelle Fenster ist funktioniert
if(myVar !== null && myVar === myVar.window) {
    // Code
}

Mehr Infos

Die Überprüfung per instanceof funktioniert nicht in allen Browsern, da nicht alle Browser das Window-Objekt unterstützen oder dieses zumindest nicht öffentlich zugänglich machen.