Algunos operadores matemáticos avanzados que se pueden usar son:
Devuelve el residuo de una división.
var y = 4;
var x = y % 2;
console.log(x); //Imprime 0
Incrementa una variable en uno, dependiendo de la posición donde se ubica.
var a = 5;
var c = a++;
//Imprime a: 6 c: 5
console.log("a: " + a + " c: " + c);
Como se aprecia en el ejemplo, se establece que el incremento de la variable a
al final de la misma, quedando con un valor de 6
, pero en la asignación del valor a la variable c
, se observa que ésta ha quedado con el valor anterior de a
, ya que inicialmente se realiza la "copia" del valor de a
y posteriormente se realiza el incremento de ésta última.
var a = 5;
var c = ++a;
//Imprime a: 6 c: 6
console.log("a: " + a + " c: " + c);
Se observa que al realizar el proceso de asignación del incremento al inicio de la variable, tanto a
como b
, quedan con el mismo valor, ya que se ha indicado que inicialmente se realice el incremento y posteriormente se asigna el valor.
Análogamente existe la función que disminuye en un valor.
var a = 5;
var c = a--;
//Imprime - a: 4 c: 5
console.log("a: " + a + " c: " + c);
var a = 5;
var c = --a;
//Imprime - a: 4 c: 4
console.log("a: " + a + " c: " + c);
Como se ha visto la notación variable++;
variable--;
permite incrementar y decrementar en un valor una variable, pero también es posible en más de uno.
var a = 5;
var b = 10;
var c = 8;
var d = 10;
console.log(a+=5);//10
console.log(b-=3);//7
console.log(c*=2);//16
console.log(d/=5);//2
Una acción análoga del anterior código sin utilizar la notación anterior sería:
var a = 5;
var b = 10;
var c = 8;
var d = 10;
console.log(a = a + 5);//10
console.log(b = b - 3);//7
console.log(c = c * 2);//16
console.log(d = d / 5);//2