Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Nowy obiekt z dynamicznej nazwy: var name = 'myClass'; obj = new name();
patong
post 16.07.2012, 07:53:34
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 18.07.2009

Ostrzeżenie: (0%)
-----


Niby prosta rzecz a nie ogarniam ;/

W phpie mogę zrobić:

  1. $var = 'myClass';
  2.  
  3. $object = new $var();


i zostanie utworzony obiekt klasy myClass, to jak to samo zrobić w javascripcie?

P.S. Próbowałem już bardzo wielu rzeczy, więc jak ktoś nie wie to nie piszcie "a spróbuj tego". Albo ktoś to robił i wie albo nie.

Z góry dzięki, znacznie mi to ułatwi robotę.
Go to the top of the page
+Quote Post
Sephirus
post 16.07.2012, 08:00:24
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


[JAVASCRIPT] pobierz, plaintext
  1.  
  2. window.myClass = function () {
  3. // ...
  4. }
  5.  
  6. var name = 'myClass';
  7.  
  8. var object = new window[name]();
  9.  
[JAVASCRIPT] pobierz, plaintext


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
patong
post 16.07.2012, 08:27:16
Post #3





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 18.07.2009

Ostrzeżenie: (0%)
-----


Dzięki stary,
czyli funkcja która będzie obiektem musi być składnikiem jakiegoś istniejącego już obiektu? W tym wypadku window?
Go to the top of the page
+Quote Post
Sephirus
post 16.07.2012, 08:34:23
Post #4





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Tak najprościej zrobić smile.gif

Bo w JS coś takiego jak:

[JAVASCRIPT] pobierz, plaintext
  1. obiekt['nazwa'];
  2.  
  3. // to to samo co
  4.  
  5. obiekt.nazwa;
[JAVASCRIPT] pobierz, plaintext


a window jest dostępne globalnie wink.gif

Ten post edytował Sephirus 16.07.2012, 08:34:44


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post
Crozin
post 16.07.2012, 08:54:32
Post #5





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat
czyli funkcja która będzie obiektem
W JS właściwie nie istnieje coś takiego jak funkcja - zawsze masz do czynienia z obiektem.
Cytat
musi być składnikiem jakiegoś istniejącego już obiektu
Jeżeli funkcja jest zadeklarowana przy pomocy "składni globalnej", tj.:
[JAVASCRIPT] pobierz, plaintext
  1. function myFunc() {
  2. // ...
  3. }
[JAVASCRIPT] pobierz, plaintext
Jest ona wtedy przypisywana jako właściwość obiektu window.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.07.2025 - 11:30