Incremento (++)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Please take two minutes to fill out our short survey.
El operador de incremento (++
) incrementa (agrega uno a) su operando y retorna el valor antes o despues del incremento, dependiendo de dónde está posicionado el operador.
Pruébalo
let x = 3;
const y = x++;
console.log(`x:${x}, y:${y}`);
// Expected output: "x:4, y:3"
let a = 3;
const b = ++a;
console.log(`a:${a}, b:${b}`);
// Expected output: "a:4, b:4"
Sintaxis
x++
++x
Descripción
El operador ++
acepta dos tipos de operandos: número y BigInt. Primero intenta transformar ambos operandos a valores numéricos y prueba sus tipos. Realiza una incremento con BigInt si ambos operandos se convierten en BigInts; de lo contrario, realiza el incremento de números.
Si se usa postfijo, con el operador después del operando (por ejemplo, x++
), el operador de incremento incrementa y devuelve el valor antes de incrementar.
Si se usa prefijo, con un operador antes del operando (por ejemplo, ++x
), el operador de incremento incrementa y devuelve el valor después del incremento.
El operador de incremento solo se puede aplicar a operandos que son referencias (variables y propiedades de objetos; es decir, objetivos de asignación válidos). ++x
se evalúa como un valor, no como una referencia, por lo que no se pueden encadenar varios operadores de incremento.
++(++x); // SyntaxError: Invalid left-hand side expression in prefix operation
Ejemplos
Incremento postfijo
let x = 3;
const y = x++;
// x es 4; y es 3
let x2 = 3n;
const y2 = x2++;
// x2 es 4n; y2 es 3n
Incremento prefijo
let x = 3;
const y = ++x;
// x es 4; y es 4
let x2 = 3n;
const y2 = ++x2;
// x2 es 4n; y2 es 4n
Especificaciones
Specification |
---|
ECMAScript® 2026 Language Specification # sec-postfix-increment-operator |