Nie mogę zrozumieć, dlaczego window
jest pod self
, a self
jest pod obiektem window
.Dziwny obiekt własny w obiekcie okna
jeśli przejdziesz do dev-tools lub Firebug i napisz window
masz obiekt DOM window
, który pod tym obiektem jest self
. Dziwne jest to, że window
znów jest pod self
!
Możesz napisać
window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self.window.self
i nadal masz window
obiekt!
Jak ?!
Zobacz http://stackoverflow.com/questions/6145544/self-document-this-top-window – Shaz
Więc nie widziałeś już wcześniej autoreferencji? Jest to dość powszechne na przykład w modelu singleton, a ponieważ javascript nie ma bezpośrednich zmiennych prywatnych, możesz mieć do niego dostęp w nieskończoność ... Nie mówię tego "JEST" w tym przypadku, ale przypadek użycia lub wyjaśnienie, dlaczego może to być – PhD
To jest obiekt, nie funkcja. nawet jeśli istnieje metoda autoreferencji do tworzenia obiektów w JavaScript, byłbym bardziej niż szczęśliwy, aby się tego nauczyć. – Mohsen