Reste (%)
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
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
js
NaN % 2 // NaN
Reste avec l'infini
js
Infinity % 2 // NaN
Infinity % 0 // NaN
Infinity % Infinity // NaN
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-multiplicative-operators |
Compatibilité des navigateurs
BCD tables only load in the browser