| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Operators/void | [Back] [Original] |
Get to know MDN better
Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.
Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
L'oprateur void permet d'valuer une expression donne et de renvoyer undefined.
const output = void 1;
console.log(output);
// Expected output: undefined
void console.log("expression evaluated");
// Expected output: "expression evaluated"
void (function iife() {
console.log("iife is executed");
})();
// Expected output: "iife is executed"
void function test() {
console.log("test function executed");
};
try {
test();
} catch (e) {
console.log("test function is not defined");
// Expected output: "test function is not defined"
}
void expression;
Cet oprateur permet d'valuer des expressions retournant une valeur l o on attend une expression qui vaut undefined.
L'oprateur void est souvent utilis pour obtenir la valeur undefined, gnralement avec "void(0)" (qui est l'quivalent de "void 0"). Pour ce cas d'exemple, on aurait trs bien pu utiliser la variable globale undefined.
Attention la prcdence des oprateurs et notamment de celle de void, si besoin, on pourra utiliser des parenthses pour clarifier la rsolution de l'expression :
void 2 == "2"; // renvoie false
void (2 === "2"); // renvoie undefined
Lorsqu'on utilise tout un script dans une fonction qu'on value immdiatement, void peut tre utilis pour que le mot-cl function soit trait comme une expression plutt que comme une dclaration.
void (function iife() {
var toto = function () {};
var machin = function () {};
var truc = function () {
toto();
machin();
};
var bidule = function () {};
truc();
bidule();
})();
Lorsqu'un navigateur utilise une URI avec javascript:, le code de l'URI est valu et le rsultat remplace le contenu de la page, sauf si la valeur renvoye vaut undefined. L'utilisateur void peut alors tre utilis pour renvoyer cette valeur. Par exemple :
<a href="javascript:void(0);"> Cliquer ici (sans effet) </a>
<a href="javascript:void(document.body.style.backgroundColor='green');">
Cliquer ici pour rendre le fond vert
</a>
Malgr cela, il n'est pas recommand d'utiliser le pseudo-protocole javascript:, on lui prfrera des mthodes moins risques et moins intrusives comme les gestionnaires d'vnements.
Les fonctions flches raccourcissent la syntaxe pour obtenir la valeur d'une fonction avec le rsultat d'une expression qui constitue le corps de la fonction. Ainsi, la fonction renvoie ncessairement une valeur. Aussi, convertir une base de code afin d'utiliser des fonctions flches peut avoir certains effets de bord lorsqu'on souhaite qu'une fonction soit simplement excute mais pas que sa valeur de retour interfre avec le reste.
Pour viter de transmettre cette valeur de retour, on pourra utiliser l'oprateur void :
button.onclick = () => void faireQQc();
Ainsi, la valeur de retour de la fonction faireQQc sera bloque par void et c'est undefined qui sera la valeur de retour de la fonction flche. Cela s'avre utile si on change l'API de faireQQc par exemple et qu'on souhaite viter les effets de bord causs par cette modification.
| Spcification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-void-operator |
Cette page a t modifie le 22 mai 2026 par les contributeurices du MDN.
Certaines parties de ce contenu sont protges par le droit d'auteur 19982026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.
| Web Proxy Viewer | New URL | Original Page |