2011-01-20 28 views
5

Jak sprawdzić, czy zmienna jest typu DOMWindow w przeglądarce Google Chrome? Kiedy próbuję odwoływać się do typu DOMWindow, otrzymuję ReferenceError. Na przykład, przy próbie sprawdzenia typ oknie w konsoli:Jak odwołać się do typu DOMWindow w przeglądarce Google Chrome?

> window instanceof DOMWindow 

    ReferenceError: DOMWindow is not defined 

Ale okno jest jasno typu DOMWindow. Co ja robię źle?

+2

nie jestem pewnie rozumiem twój punkt widzenia. window to obiekt ... typu DOMWindow. –

+0

Nie widzę typu DOMWindow w mojej przeglądarce Chrome. Jesteś pewien, że jest to typ? –

+0

@Mohamed - W JavaScript nie ma klas, twoje polecenie jest puste. – galambalazs

Odpowiedz

4

Co robię źle?

pojawi się błąd odniesienia ReferenceError: DOMWindow is not defined bo nie ma na DOMWindow członkiem globalnego obiektu do sprawdzenia przeciw.

uzyskać ten sam błąd po wpisaniu window instanceof rubbish

window.constructor.name może dać ci to, co chcesz (ciąg „DOMWindow” aby sprawdzić przeciw), althogh muszę cię ostrzec, że to non-standard.

+2

window.constuctor.name będzie działać dobrze dla mnie. To niefortunne, że nie jest to standard, ale jest to rozszerzenie, więc i tak musi działać tylko w Chrome. Dzięki za pomoc! –

2

Spróbuj użyć .constructor. Przykład:

alert(window.constructor); 

To powinno dać DOMWindow lub jego odmianę, przynajmniej w Chrome.

Powiązane problemy