; è sempre necessario per scritture inline e soprattutto dopo le graffe
function pippo(a){alert(a)}; var a = "test"; pippo(a);
notare che dentro le graffe non è indispensabile mettere il ; dopo l'istruzione (però se è l'ultima o l'unica, altrimenti serve)
un while senza brachets richiede il ; un while con brachet lo richiede dopo la }
var pippo = true; while(pippo) break; alert("1 loop");
var pippo = true; while(pippo){ pluto = pippo; pippo = false}; alert("1 loop");
anche qui va notato che il termine istruzione è inevitabilmente la graffa ma dopo la graffa serve il ;
per un'assegnazione di variabili a scope "temporaneo" basta la virgola ma dopo l'ultima serve il ;
var a = 0, b = 100;
assegnazione di oggetti idem, la } deve essere seguita da un ; o se in assegnazione multipla da una virgola
var myObj = {}; var other = false;
var myObj = {}, other = false;
questo è vero anche per metodi o parametri dichiarati all'interno dell' oggetto
var obj = {method:function(){}, param: true};
e via così anche se innestati
function a(){function b(){return (function c(){return "Hello World"})()}; alert(b())}; a();
Questi accorgimenti sono oltretutto indispensabili se si utilizza la packer di Dean Edwards o la mia JavaScriptCompressor
![]()