Tworzenie funkcji w JavaScript

Autor podstrony: Krzysztof Zajączkowski

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

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

function nazwa_funkcji(argument1, argument2){ // blok instrukcji }

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

var nazwa_funkcji = function(argument1, argument2){ // blok instrukcji }

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.

function writeName(name, surname){ var str = "Twoje imię: "; if(name !== undefined){ str += name; }else{ str += "nieznane;" } str += " twoje nazwisko: "; if(surname !== undefined){ str += surname; }else{ str += "nieznane"; } return str; } alert(writeName()); // wyświetli: Twoje imię: nieznane; twoje nazwisko: nieznane alert(writeName("Marian")); // wyświetli: Twoje imię: Marian; twoje nazwisko: nieznane 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:

(function(){ alert("Funkcja: sama siebie wywołałam na nikogo nie czekałam"); })();

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.

Propozycje książek