![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 532 Pomógł: 24 Dołączył: 15.04.2011 Skąd: Kalisz Ostrzeżenie: (0%) ![]() ![]() |
Niezbyt wiem jak to sie dokładnie nazywa, ale chodzi mi o poniższy kod.
Niestety, w ostatniej linijce powyższego kodu wykrzacza mi się i pisze, że SubObject jest undefined. Mam nadzięję, że rozumiecie o co mi chodzi - jak to osiągnąć? Ten post edytował adbacz 10.05.2015, 17:34:19 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Należy rozróżnić w JS własności statyczne "klasy" od własności poszczególnych instancji. W Twoim kodzie konieczne jest zastosowanie dziwacznej konstrukcji z nawiasami, ponieważ SubObject umieściłeś w prototypie Main. Tym samym SubObject staje się dostępny jedynie z poziomu konkretnych instancji "klasy" Main.
To, co chcesz uzyskać, jest możliwe do osiągnięcia w JS dzięki temu, że w tym języku wszystko jest obiektem - w tym funkcje. Tym sposobem można zadeklarować SubObject jako metodą statyczną: Kod Main.SubObject = function() { } Wówczas bez problemu można to wywołać jako Kod var sub = new Main.SubObject(); Ot, takie public static w JS (IMG:style_emoticons/default/wink.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 05:20 |