Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> JS Domknięcia i samo zwiększająca się funkcja.
mesmerro
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 1.09.2011

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


Witam, próbuję załapać domknięcia w JS, o to problemik

Program który będzie wywoływany foo(); będzie "zliczał" ilość wywołań bez użycia zmiennej globalnej ani argumentu w funckji
więc jeśli wywołamy go foo(); foo(); alert(foo()); to da nam 3

i naskrobałem coś takiego
Kod
var increment = function() {
    var i = 0;
    return function() { return i += 1;}();
};

alert(increment()+" "+increment());

(tak wiem, że to się zeruję)

Póki co stoję poetycko to ujmując "jak widływ gnoju".
Wszelkie sugestie mile widziane
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wszerad
post
Post #2





Grupa: Zarejestrowani
Postów: 106
Pomógł: 18
Dołączył: 11.12.2008

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


Musisz taką funkcje brać w nawias, deklaracja obiektu to jeszcze nie obiekt (podobnie jest z new Date() itp), kiedy zmiennej przypisujesz funkcje var foo = function(){} czy function foo(){} to wywołanie jej uzyskujesz przez foo(), tak samo jest tu, nawias na końcu to arrgumenty jakie przekazujesz do funkcji.
  1. (function(x){alert(x);})('witaj!') //wyswietli 'witaj!'
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 28.12.2025 - 07:27