Tworzenie funkcji w JavaScript

Stronę tą wyświetlono już: 174 razy

Funkcje w JavaScript tworzy się przy użyciu słowa kluczowego function w następujący sposób:

Listing 1
  1. function nazwa_funkcji(argument1, argument2){
  2. // blok instrukcji
  3. }

Funkcje można też tworzyć w następujący sposób:

Listing 2
  1. var nazwa_funkcji = function(argument1, argument2){
  2. // blok instrukcji
  3. }

Nazwa funkcji nie może oczywiście zawierać na początku liczb i może składać się z małych i dużych liter alfabetu (bez znaków polskich).

W JavaScript nie da się przeciążać funkcji tak jak ma to miejsce w przypadku C++ a to dlatego, że nie ma ścisłej kontroli typów przyjmowanych przez funkcje. Możliwe jest jednak zaimplementowanie jednej funkcji, która odpowiednio dostosuje się, jeżeli dana zmienna nie zostanie ustawiona. Sposobów jest kilka jeden z nich zamieszczam poniżej.

Listing 3
  1. function writeName(name, surname){
  2. var str = "Twoje imię: ";
  3. if(name !== undefined){
  4. str += name;
  5. }else{
  6. str += "nieznane;"
  7. }
  8. str += " twoje nazwisko: ";
  9. if(surname !== undefined){
  10. str += surname;
  11. }else{
  12. str += "nieznane";
  13. }
  14. return str;
  15. }
  16. alert(writeName()); // wyświetli: Twoje imię: nieznane; twoje nazwisko: nieznane
  17. alert(writeName("Marian")); // wyświetli: Twoje imię: Marian; twoje nazwisko: nieznane
  18. alert(writeName("Marian", "Paździoch")); // wyświetli: Twoje imię: Marian; twoje nazwisko: Paździoch

Koniec końców w JavaScript funkcja może wywołać samą siebie poprzez zastosowanie następującej konstrukcji:

Listing 4
  1. (function(){
  2. alert("Funkcja: sama siebie wywołałam na nikogo nie czekałam");
  3. })();

W wyżej pokazanym przypadku funkcja wywołała samą siebie w miejscu jej utworzenia.

Funkcje w JavaScript mają znacznie szersze zastosowanie, gdyż spełniają one rolę odpowiednika tworzenia deklaracji obiektów klas w innych językach programowania, ale to już jest temat na inną podstronę tego działu.

Komentarze