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.