Reste (%) - JavaScript | MDN

Baseline Widely available

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'opérateur du reste (%) renvoie le reste de la division de l'opérande gauche par l'opérande droit. Le résultat a toujours le signe du numérateur.

Exemple interactif

console.log(13 % 5);
// Expected output: 3

console.log(-13 % 5);
// Expected output: -3

console.log(4 % 2);
// Expected output: 0

console.log(-4 % 2);
// Expected output: -0

Bien que dans la plupart des langages, % est un opérateur de reste, pour d'autres (par exemple Python, Perl) c'est un opérateur de modulo. Lorsqu'on utilise des valeurs positives, les deux opérateurs sont équivalents mais lorsque le numérateur et de dénominateur ont des signes différents, le reste et le modulo fourniront des signes différents. Pour obtenir une opération équivalente au modulo en JavaScript, on pourra utiliser ((a % n ) + n ) % n.

Syntaxe

js

Opérateur: var1 % var2;

Exemples

Reste avec numérateur positif

js

12 % 5; //  2
1 % -2; //  1
1 % 2; //  1
2 % 3; //  2
5.5 % 2; // 1.5

Reste avec numérateur négatif

js

-12 % 5; // -2
-1 % 2; // -1
-4 % 2; // -0

Reste avec NaN

Reste avec l'infini

js

Infinity % 2; // NaN
Infinity % 0; // NaN
Infinity % Infinity; // NaN

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-multiplicative-operators

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par les contributeurs du MDN.