This article needs an editorial review. How you can help.
Resum
Una sentència buida es fa servir per no proveïr cap sentència, encara que la sintaxi de JavaScript n'esperaria una.
Sintaxi
;
Descripció
La sentència buida és un punt i coma (;) que indica que cap sentència s'executarà, encara que la sintaxi de JavaScript en requereixi una. Pel contrari, quan es vol realitzar múltiples sentències, però JavaScript només en permet un, és possible realitzar-ho mitjançant l'ús d'una sentència de block; que combina diverses sentències en una única sentència.
Exemples
La sentència buida sovint s'utilitza amb sentències de bucles. Vegeu l'exemple segúent amb el cos del bucle buit:
var arr = [1, 2, 3]; // Assign all array values to 0 for (i = 0; i < arr.length; arr[i++] = 0) /* empty statement */ ; console.log(arr) // [0, 0, 0]
Nota: És una bona idea comentar l'ús intencional de la sentència buida, ja que no és fa molt obvi diferenciar-lo d'un punt i coma normal. En el següent exemple l'ús probablement no és intencional:
if (condition); // Caution, this "if" does nothing! killTheUniverse() // So this gets always executed!!!
Un altre exemple: Una sentència if...else
sense claus ({}
). Si tres
és cert, no passarà res, four
does not matter, ni tampoc s'executarà la funció launchRocket()
en el cas else
.
if (one) doOne(); else if (two) doTwo(); else if (three) ; // nothing here else if (four) doFour(); else launchRocket();
Especificacions
Especificació | Estat | Comentaris |
---|---|---|
1a edició de ECMAScript. | Estàndard | Definició inicial. |
ECMAScript 5.1 (ECMA-262) The definition of 'Empty statement' in that specification. |
Standard | |
ECMAScript 6 (ECMA-262) The definition of 'Empty statement' in that specification. |
Release Candidate |
Compatibilitat amb navegadors
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suport bàsic | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Característica | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suport bàsic | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |