Operadores Javascript aritméticos

Los operadores aritméticos realizan aritmética en números (literales o variables).

Operator Descripción
+ Suma
Resta
* Multiplicación
** Potencia (ES2016)
/ División
% Módulo (Resto)
++ Incremento
Decremento

Operaciones aritméticas

Una típica operación aritmética opera con dos números, denominados literales.

Ejm

var x = 100 + 50;

También puede operar con variables

Ejm

var x = a + b;

O expresiones

Ejm

var x = (100 + 50) * a;

Operadores y operandos

Los números (en una operación aritmética) son llamados operandos. La operación (a realizar entre los dos operandos) está definida por un operador.

Suma

El operador de suma (+) suma operandos.

Ejm

var x = 5;
var y = 2;
var z = x + y;

Resta

El operador de resta (-) resta 2 operandos.

Ejm

var x = 5;
var y = 2;
var z = x - y;

Producto

El operador de producto (*) multiplica dos operandos.

Ejm

var x = 5;
var y = 2;
var z = x * y;

Cociente

El operador de cociente (/) divide dos operandos.

var x = 5;
var y = 2;
var z = x / y;

Módulo

El operador de módulo (resto) (%) calcula el resto de la división de dos operandos.

Ejm

var x = 5;
var y = 2;
var z = x % y;

En aritmética, la división de dos enteros produce un cociente y un resto. En matemáticas, el resultado de una operación de módulo es el resto de una división aritmética.

Incremento

El operador de incremento (++) incrementa números.

Ejm

var x = 5;
x++;
var z = x;

Decremento

El operador de decremento (–) decrementa números.

Ejm

var x = 5;
x--;
var z = x;

Potencia

El operador de exponenciación (**) eleva el primer operando a la potencia del segundo operando.

Ejm

var x = 5;
var z = x ** 2;          // result is 25

x ** y produce el mismo resultado que Math.pow (x, y).

Ejm

var x = 5;
var z = Math.pow(x,2);   // result is 25

Precedencia de los operadores

La precedencia del operador describe el orden en que se realizan las operaciones en una expresión aritmética.

Ejm

var x = 100 + 50 * 3;

¿El resultado del ejemplo anterior es igual a 150 * 3, o es igual a 100 + 150?

¿La suma o la multiplicación se hacen primero?

Como en las matemáticas escolares tradicionales, la multiplicación se realiza primero.

La multiplicación (*) y la división (/) tienen mayor prioridad que la suma (+) y la resta (-).

Y (como en las matemáticas escolares) la precedencia se puede cambiar usando paréntesis.

Ejm

var x = (100 + 50) * 3;

Cuando se usan paréntesis, las operaciones dentro de los paréntesis se calculan primero.

Cuando muchas operaciones tienen la misma precedencia (como la suma y la resta), se calculan de izquierda a derecha.

Ejm

var x = 100 + 50 - 3;

Valores de precedencia del operador de JavaScript

Value Operator Description Example
20 ( ) Agrupación de expresiones (3 + 4)
19 . Miembro person.name
19 [] Miembro person[“name”]
19 () Función myFunction()
19 new Instancias de objeto new Date()
17 ++ Postfix Incremento i++
17 Postfix Decremento i–
16 ++ Prefix Incremento ++i
16 Prefix Decremento –i
16 ! No lógico !(x==y)
16 typeof Tipo typeof x
15 ** Potencia (ES2016) 10 ** 2
14 * Multiplicación 10 * 5
14 / División 10 / 5
14 % Resto de la división 10 % 5
13 + Suma 10 + 5
13 Resta 10 – 5
12 << Desplazar a la izquierda x << 2
12 >> Desplazar a la derecha x >> 2
12 >>> Desplazar a la derecha (sin firmar) x >>> 2
11 < Menos que x < y
11 <= Menos o igual que x <= y
11 > Igual que x > y
11 >= Más o igual que x >= y
11 in Propiedad en objeto “PI” in Math
11 instanceof Instancia de objeto instanceof Array
10 == Igual x == y
10 === Idéntico x === y
10 != Distinto x != y
10 !== Desigual estricto x !== y
9 & Bitwise AND x & y
8 ^ Bitwise XOR x ^ y
7 | Bitwise OR x | y
6 && AND lógico x && y
5 || OR lógico x || y
4 ? : Condición ? “Yes” : “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 Función pausa yield x
1 , Coma 5 , 6

Las expresiones entre paréntesis se calculan completamente antes de que el valor se use en el resto de la expresión.