--- title: vide slug: Web/JavaScript/Reference/Instructions/Vide tags: - Instruction - JavaScript - Reference translation_of: Web/JavaScript/Reference/Statements/Empty ---
Une instruction vide est utilisée pour ne fournir aucune instruction là où JavaScript en attendrait une.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
;
L'instruction vide est représentée par un point-virgule (;) qui indique qu'il n'y a aucune instruction à exécuter, même si JavaScript requiert une instruction à cet emplacement. Le comportement réciproque, où on souhaite exécuter plusieurs instructions là où JavaScript en attend une est possible grâce à l'instruction bloc qui permet de combiner plusieurs instructions en une seule.
L'instruction vide peut être utilisée dans les boucles. Par exemple, ici on a un corps de boucle totalement vide :
var arr = [1, 2, 3]; // Affecter 0 pour toutes les valeurs du tableau for (i = 0; i < arr.length; arr[i++] = 0) /* instruction vide */ ; console.log(arr) // [0, 0, 0]
Note : Cela peut être raisonnable que de commenter l'utilisation d'une instruction vide pour la rendre visible et l'expliciter. Par exemple, dans le code qui suit, le point-virgule ne semble pas intentionnel :
if (condition); // Attention, ce "if" ne fait rien ! finDuMonde() // Cette méthode est donc toujours lancée !!!
Un autre exemple avec une instruction {{jsxref("Instructions/if...else")}} sans accolade ({}
). Si trois
vaut true
, rien ne sera exécuté, peu importera la valeur de quatre
, la fonction chargerFusée()
ne sera pas exécutée.
if (un) faire1èreEtape(); else if (deux) faire4èmeEtape(); else if (trois) ; // rien ici else if (quatre) faire4èmeEtape(); else chargerFusée();
Spécification | État | Commentaires |
---|---|---|
{{SpecName('ESDraft', '#sec-empty-statement', 'Instruction vide')}} | {{Spec2('ESDraft')}} | |
{{SpecName('ES6', '#sec-empty-statement', 'instruction vide')}} | {{Spec2('ES6')}} | |
{{SpecName('ES5.1', '#sec-12.3', 'instruction vide')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES3', '#sec-12.3', 'instruction vide')}} | {{Spec2('ES3')}} | |
{{SpecName('ES1', '#sec-12.3', 'instruction vide')}} | {{Spec2('ES1')}} | Définition initiale. |
{{Compat("javascript.statements.empty")}}