Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funkcja, wewnątrz funkcji, ze zmiennymi z funkcji nadrzędnej ;)
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
tormee
... a jeśli nie to już tłumaczę:

jest sobie funkcja:

  1. function FajnFunkcja() {
  2.  
  3. }


i jest druga funkcja z zapisanymi zmiennymi

  1. function FunkcjaZeZmiennymi() {
  2. var zmienna1 = 'tralala';
  3. var zmienna2 = 'sratata';
  4.  
  5. FajnaFunkcja(); // tutaj wywołujemy funkcję pierwszą
  6. }


No i właśnie, teraz pytanie, jak sprawić, żeby FajnaFunkcja(); widziała zmienne z FunkcjiZeZmiennymi(); ?

Dodam jeszcze co jest DOŚĆ WAŻNE, że chciałbym FajnąFunkcję(); wywoływać w innych FunkcjachZeZmiennymi();, aby przypisywały się za każdym razem inne zmienne, do tej FajnejFunkcji();. Tak więc zmienne globalne odpadają.

A może jest jakiś inny sposób, na który nie wpadłem, żeby nie pisać setek linijek kodu... za każdym razem, gdy potrzebuję tej samej funkcji, tylko z innymi zmiennymi.
flashdev
Cytat(tormee @ 1.12.2010, 03:52:30 ) *
[...]
A może jest jakiś inny sposób, na który nie wpadłem, żeby nie pisać setek linijek kodu... za każdym razem, gdy potrzebuję tej samej funkcji, tylko z innymi zmiennymi.


Do tego wymyślono takie dobrodziejstwo jak parametry funkcji.
Crozin
Czy FajnaFunkcja ma być dostępna spaza FunkcjaZeZmiennymi czy ma to być wewnętrzna metoda tej ostatniej? JS to język obiektowy o zasięgu funkcyjnym - nie zapominajmy o tym:

[JAVASCRIPT] pobierz, plaintext
  1. function FunkcjaZeZmiennymi() {
  2. var zmienna1 = 'tralala';
  3. var zmienna2 = 'sratata';
  4.  
  5. this.FajnaFunkcja = function() { // Chcąc uczynić tą funkcję prywatną deklarujemy ją poprzez var FajnaFunkcja
  6. alert(zmienna1 + zmienna2);
  7. };
  8.  
  9. //FajnaFunkcja();
  10. }
  11.  
  12. var f = new FunkcjaZeZmiennymi();
  13. f.FajnaFunkcja();
[JAVASCRIPT] pobierz, plaintext
tormee
Cytat(flashdev @ 1.12.2010, 05:20:05 ) *
Do tego wymyślono takie dobrodziejstwo jak parametry funkcji.


to chyba będzie to smile.gif dam znać jak przetestuję


Cytat(Crozin @ 1.12.2010, 08:21:58 ) *
Czy FajnaFunkcja ma być dostępna spaza FunkcjaZeZmiennymi czy ma to być wewnętrzna metoda tej ostatniej? JS to język obiektowy o zasięgu funkcyjnym - nie zapominajmy o tym:



No właśnie sęk w tym, że chciałbym ją mieć na zewnątrz (bo będę się do niej odwoływać w kilku innych funkcjach), więc pomysł raczej nie wypali...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.