--- title: Resto (%) slug: Web/JavaScript/Reference/Operators/Remainder translation_of: Web/JavaScript/Reference/Operators/Remainder original_slug: Web/JavaScript/Referencia/Operadores/Resto ---
{{jsSidebar("Operators")}}

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

{{EmbedInteractiveExample("pages/js/expressions-remainder.html")}}

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
{{SpecName('ESDraft', '#sec-multiplicative-operators', 'Remainder operator')}}

Compatibilidad con navegadores

{{Compat("javascript.operators.remainder")}}

Ver también