Resto (%)

El operador resto (%) devuelve el resto de la división entre dos operandos. Siempre toma el signo del dividendo.

Tener en cuenta que en la mayoría de los lenguajes de programación, el operador de resto es ‘%’, pero en otros (como Python, Perl) es el operador módulo. Ambos son iguales para valores positivos, pero cuando el divisor y el dividendo son de signos distintos, se obtienen distintos resultados. Para obtener el módulo en JavaScript, en lugar de a % n, usa ((a % n ) + n ) % n.

Sintaxis

Operador: var1 % var2

Ejemplos

Resto con dividendo positivo

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

Resto con dividendo negativo

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

Resto con NaN

NaN % 2 // NaN

Resto con Infinity

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

Especificaciones

Especificación
ECMAScript (ECMA-262)
La definición de 'Remainder operator' en esta especificación.

Compatibilidad con navegadores

BCD tables only load in the browser

Ver también