Introduciamo le funzioni.
Riteniamo sia necessario dare un'idea di cosa sia una funzione attraverso una
analogia:
una funzione è paragonabile a una ricetta di cucina
la ricetta di cucina è una serie di procedure, più
o meno sofisticato, attraverso cui cuciniamo i nostri ingradienti e poi
otteniamo il nostro piatto pronto.
La funzione elabora i valori (o per usare il termine tecnico le variabili)
ed i parametri che noi gli forniamo e ci restituisce un risultato.
Creiamo una funzione:
function nome della funzione (parametri,parametri)
{
//corpo della funzione in cui vengono elaborate le variabili
};
e precisiamone la sintassi.
innanzitutto scrivendo:
function nome della funzione
la dichiariamo.
Attraverso le parentesi:
()
noi passiamo i parametri della funzione, ovvero i valori che verranno
elaborati all'interno del corpo della funzione
più parametri devono essere separati ognuno da una virgola ,
Vi sono poi le parentesi graffe:
{
}
all'interno di questa vi è il corpo della funzione,
cioé
le variabili dichiarate,
i vari operatori,
i cicli.
Nelle tastiere italiane non sono presenti le parentesi graffe
Per scriverle con le tastiere italiane devo mantenere premuto il
tasto ALT e nel tastierino numerico in sequenza i tasti 1 2 3
per la prima parentesi.
Poi il tasto ALT e nel tastierino numerico in sequenza i tasti 1 2 5
per la seconda parentesi.
Tutto questo DEVE essere terminato dal carattere punto e virgola:
;
abbiamo le seguenti regole generali per le funzioni:
- le funzioni non possono essere nidificate
- il nome di ogni funzione deve essere unico per ciascuno wmlscript
- Tutti i parametri delle funzioni sono determinati da valori.
- I parametri della funzione (ad esempio il valore delle variabili) devono
essere inizializzati prima che il corpo della funzione sia eseguito.
- Una funzione DEVE sempre restituire un valore
il valore predefinito che viene restituito se non è
specificato altro e una stringa di testo vuota "".
Sebbene come abbiamo dichiarato prima alcuna funzione possa essere nidificata
vi è una eccezione però
usando la parola chiave extern posso rendere disponibile una funzione residente in un file esterno
all'interno di una funzione.
function uno(parametro a, parametro b)
{
return valori_elaborati;
}
extern function due () {
;//corpo della funzione
}