Funzioni Javascript

← jQuery e Javascript


Argomenti della funzione

Ecco un esempio di come estrarre gli argomenti passati al richiamo di una funzione.

Gli argomenti della funzione nome_funzione si trovano nell'array nome_funzione.arguments, gestibile come un qualsiasi altro array.

function funzione(){
  // array che raccoglie con gli argomenti della funzione
  argomenti = new Array();
  // per ogni argomento passato alla funzione
  for( i=0; i<funzione.arguments.length; i++ ) {
    // ...
    argomenti[i] = funzione.arguments[i];
  }
}

Richiamare una funzione dal nome

Data la funzione e avendo il suo nome in formato stringa

function refresh_function() {
   ...
}

La si può richiamare così:

eval( 'refresh_function' )( );

oppure così:

var function_name = 'refresh_function';
window[function_name].apply();

oppure così in jquery:

function handlerName(e) { 
   alert(e.data.msg); 
} 
$(document).ready( function() { 
   $("p").bind( "click", { msg: "You just clicked the paragraph!" }, handlerName ) 
} ); 

Controllo dell'esistenza di una funzione

Affinchè non venga lanciato un errore, se non si è sicuri dell'esistenza/implementazione di una funzione, è bene fare un controllo della sua esistenza per evitare errori javascript...

if( typeof( nome_funzione ) == "function" ) {
   nome_funzione();
}