Aritmética de JavaScript
- Página anterior Operadores JS
- Página siguiente Asignación JS
La situación típica de procesamiento de números es la aritmética.
Operadores aritméticos de JavaScript
Los operadores aritméticos ejecutan operaciones aritméticas en valores numéricos (textos o variables).
operador | descripción |
---|---|
+ | Adición |
- | Sustracción |
* | Multiplicación |
** | Potencia (ES2016) |
/ | División |
% | Coeficiente |
++ | Aumento |
-- | Disminución |
Operadores aritméticos
Operaciones aritméticas típicas operan con dos valores numéricos.
Estos dos números pueden ser literals:
instancia
var x = 7 + 8;
O variable:
instancia
var x = a + b;
O expresión:
instancia
var x = (7 + 8) * a;
Operadores y operandos
En las operaciones aritméticas, los números se denominanOperando.
La operación (realizada entre dos operandos) es ejecutada poroperadorDefinición.
Operando | operador | Operando |
---|---|---|
7 | + | 8 |
Sustracción
SustracciónOperador (-
)Sustraendo.
var x = 7; var y = 8; var z = x - y;
Multiplicación
MultiplicaciónOperador (*
)Multiplicador.
var x = 7; var y = 8; var z = x * y;
Coeficiente
CoeficienteOperador (%
)Devuelve el residuo de la división.
var x = 7; var y = 2; var z = x % y;
Notas:En la aritmética, la división de dos enteros produce un cociente y un residuo.
Notas:En matemáticas, el resultado de la operación módulo es el residuo de la división aritmética.
Aumento
AumentoOperador (++
)Aumenta el valor numérico.
var x = 7; x++; var z = x;
Disminución
DisminuciónOperador (--
)Disminuye el valor numérico.
var x = 7; x--; var z = x;
Potencia
El operador de potencia (**) eleva el primer operando a la potencia del segundo operando.
instancia
var x = 5; var z = x ** 2; // El resultado es 25
El resultado de x ** y es el mismo que Math.pow(x,y):
instancia
var x = 5; var z = Math.pow(x,2); // El resultado es 25
Prioridad del operador
La prioridad del operador (Operator precedence) describe el orden en que se ejecutan las operaciones en una expresión aritmética.
instancia
var x = 200 + 50 * 2;
¿El resultado del ejemplo es 250 * 2 o 200 + 100?
¿Tiene prioridad la suma o la multiplicación?
En la matemática tradicional de la escuela, la multiplicación tiene prioridad.
multiplicación (*
()) y división (%
()) y suma (+
()) y resta (-
()) tiene una prioridad mayorprioridad.
Al mismo tiempo, (como en la matemática de la escuela), se puede cambiar la prioridad utilizando paréntesis:
instancia
var x = (200 + 50) * 2;
Cuando se utilizan paréntesis, las operaciones dentro de los paréntesis se calculan primero.
Cuando múltiples operaciones tienen la misma prioridad (por ejemplo, suma y resta), su cálculo es de izquierda a derecha:
instancia
var x = 200 + 50 - 2;
valor de prioridad del operador de JavaScript
valor | operador | descripción | instancia |
---|---|---|---|
20 | ( ) | agrupación de expresiones | (3 + 4) |
19 | . | miembro | person.name |
19 | [] | miembro | person["name"] |
19 | () | llamada a función | myFunction() |
19 | new | crear | new Date() |
17 | ++ | aumento sufijo | i++ |
17 | -- | decremento sufijo | i-- |
16 | ++ | aumento prefijo | ++i |
16 | -- | decremento prefijo | --i |
16 | ! | Negación lógica | !(x==y) |
16 | typeof | tipo | typeof x |
15 | ** | potencia (ES7) | 10 ** 2 |
14 | * | multiplicación | 10 * 5 |
14 | / | división | 10 / 5 |
14 | % | división modular | 10 % 5 |
13 | + | suma | 10 + 5 |
13 | - | resta | 10 - 5 |
12 | << | desplazamiento a la izquierda | x << 2 |
12 | >> | desplazamiento a la derecha | x >> 2 |
12 | >>> | desplazamiento a la derecha (sin signo) | x >>> 2 |
11 | < | menor | x < y |
11 | <= | menor o igual | x <= y |
11 | > | mayor | x > y |
11 | >= | mayor o igual | x >= y |
11 | en | propiedad del objeto | "PI" en Math |
11 | instancia de | instancia de objeto | instancia de Array |
10 | == | igual | x == y |
10 | === | igual estrictamente | x === y |
10 | != | Desigualdad | x != y |
10 | !== | Desigualdad estricta | x !== y |
9 | & | Y lógico | x & y |
8 | ^ | XOR lógico | x ^ y |
7 | | | O lógico | x | y |
6 | && | Conjunción lógica | x && y |
5 | || | Negación lógica | x || y |
4 | ? : | Condicional | ? "Sí" : "No" |
3 | = | asignación | x = y |
3 | += | asignación | x += y |
3 | -= | asignación | x -= y |
3 | *= | asignación | x *= y |
3 | %= | asignación | x %= y |
3 | <<= | asignación | x <<= y |
3 | >>= | asignación | x >>= y |
3 | >>>= | asignación | x >>>= y |
3 | &= | asignación | x &= y |
3 | ^= | asignación | x ^= y |
3 | |= | asignación | x |= y |
2 | yield | yield x | pausar función |
1 | , | Coma | 7, 8 |
Nota:Rosado pálido indica tecnologías experimentales o sugeridas (ECMASScript 2016 o ES7)
Consejo:La expresión dentro de los paréntesis se calculará completamente antes de que el valor se utilice en el resto de la expresión.
- Página anterior Operadores JS
- Página siguiente Asignación JS