Nwlapcug.com


Chiamata a una funzione da una funzione JavaScript



JavaScript è un linguaggio di scripting per il Web utilizzato per eseguire calcoli o controllare il layout delle pagine Web mentre incorporato nello script HTML. Potenza e la flessibilità di JavaScript deriva dal fatto che JavaScript è un linguaggio object-oriented, che significa che contiene alcune funzionalità di altre lingue. Per questo motivo, molti tipi di dati in JavaScript sono oggetti, incluse le funzioni. Le funzioni si comportano come oggetti consentono ai programmatori di fare cose interessanti con loro, come nidificarli in altre funzioni.

Funzioni e valori restituiti

Funzioni in genere accettano un elenco di argomenti, eseguire codice basato su tali argomenti e neanche eseguire un'operazione o un valore restituito. Quando una funzione restituisce un valore, ciò significa che la funzione in un certo senso genera un valore, che un programmatore può assegnare a una variabile o utilizzare un altro calcolo. Il valore restituito può essere un tipo di dati scalare (ad esempio un numero intero), o un oggetto. Ad esempio, la seguente funzione accetta un numero e restituisce il numero moltiplicato per tre:

funzione triple(x)

{

Return x * 3;

}

Funzioni nidificate

All'interno di una funzione, il programmatore può definire un'altra funzione per eseguire alcune attività. Il processo di definizione è esattamente lo stesso, ma è diverso utilizzo della funzione. Quando un programmatore dichiara una funzione in ambito globale, lei può utilizzare tale funzione in tutto il programma. Quando un programmatore dichiara una funzione all'interno di un'altra funzione, tuttavia, l'unico posto che lei può usare che funzione è all'interno della funzione ha dichiarato esso dentro. Nell'esempio seguente viene illustrato questo punto:

funzione triple(x)

{

Function addThree(y) () {

Return y + y + y;

}

Return addThree(x); Restituisce il risultato restituito di "addThree"

}

funzione double(x)

{

addThree(x); illegale, addThree può essere chiamato solo all'interno della funzione "triplo"

Variabili e funzioni nidificate

La ragione di funzioni non possono chiamare le funzioni dichiarate all'interno di altre funzioni è perché la funzione interna non è nelle funzioni esterne "ambito". La funzione di "addThree" esiste nell'ambito della funzione "tripla". la funzione "doppia" rientra nell'ambito di triple e non può accedere le parti interne. Tuttavia, "addThree" si trova all'interno di ambito "triple" e di conseguenza possa accedere i meccanismi interni della "tripla". Ciò significa che le variabili dichiarate in "tripla" sono fiera di utilizzare per "addThree", e la funzione potrebbe assomigliare a questo:

funzione triple(x)

{

Function addThree() () {

ritorno x + x + x;

}

ritorno addThree

Restituzione di altre funzioni

Poiché le funzioni sono oggetti, una funzione può restituire una funzione piuttosto che dati. Ciò significa che alcune funzioni possono prendere dati per dare ad altre funzioni nidificate e restituire tali funzioni. Quindi, il programmatore può chiamare la funzione interna da fuori dell'ambito di funzioni esterne. Nell'esempio riportato di seguito in dettaglio come funziona:

Function out(x) () {

funzione add(y)

return x + y;

}

tornare all'interno;

}

x = out(3); x ora detiene la funzione oggetto "add(y)" che ha un valore di x di 3

y = x (2); x = "add(2)", che è 3 + 2, quindi y = 5