chiamare una funzione Javascript subito dopo averla definita

Consideriamo il seguente esempio:

(function() {
  var clickCount = 0;
  $('button#mybutton').click(function() {
    clickCount ++;
    alert('Clicked ' + clickCount + ' times.');
  });
}());

Questa è la semplice definizione di una funzione (anonima) che, quando viene cliccato su un bottone, aumenta un contatore. Ma in grassetto ho evidenziato due parentesi tonde: questa è una sintassi comoda e rapida per indicare che la funzione, una volta definita, deve essere anche subito eseguita. Ricapitoliamo:

function() { 
  ... 
} () ;

Questo pattern viene utilizzato quando non vogliamo inquinare il global scope con variabili che potenzialmente possono entrare in conflitto con altre, e quando vogliamo creare nuovi scope. Parleremo degli scope In altri articoli.

Related Posts: