martes, 27 de septiembre de 2016

Operadores aritméticos.

Operadores Aritméticos

En los primeros ejemplos de este tutor tan sólo se han usado sentencias muy simples como asignar un valor a una variable, mediante el operador de asignación, =, o realizar operaciones aritméticas, pero evidentemente JavaScript puede realizar más operaciones. En esta seccion y las siguientes se presentan los operadores de que dispone este lenguaje clasificados en varios grupos, según el contexto en el que se usen. Comenzamos con los más conocidos, los operadores aritméticos.


Suma +
Se trata de un operador usado para sumar dos valores numéricos o para concatenar cadenas entre sí o números y cadenas.
var var1 = 10, var2= "Buenos", var3 = "
    días", var4 = 31;

    document.write(var1+var4)        /* resultado
    41 */

    document.write(var2+var3)       /* resultado:
    Buenos días */

    document.write(var1+var3)       /* resultando:
    10 días */

Resta -
Operador usado para restar valores numéricos. Puede actuar sobre un único operando numérico cambiándole de signo.
var num1 = 10, num2 = 8, res = 0;

      res = num1 - num2;     /*res contiene 2 */

      res = -res                       /*
      ahora res contiene -2*/

Producto ( * ) y cociente ( / )
Realizan las operaciones aritméticas de multiplicar y dividir dos valores numéricos.
var op1 = 50, op2= 4, div, mul;

      div = op1/op2               /*div
      contiene 12.5 */

      mul = op1 * op2          /*mul
      contendrá 200 */

Resto %
También llamado operador módulo calcula el resto de una división.
var op1 = 50, op2= 4, resto;

      resto = op1 % op2;           /*resto
      contiene 2 */     

Incremento ( ++) y decremento (--)
Estos operadores se usan para incrementar o decrementar en 1 el valor de una variable. Si el operador se antepone a la variable la operación de incremento o decremento es prioritaria sobre cualquier otra.
var op1=5, op2 = 5, res;

      res = ++op1;     /*res
      toma el valor 6 y luego op1 el 6*/

      res = op1++;     /*res
      toma el valor 5 y luego op2 el 6*/

Operadores compuestos
Los operadores +, -, *, / pueden asociarse con el operador de asignación (=) para cambiar el valor de una variable numérica por incrementándolo, decrementándolo, multiplicándolo o dividiéndolo por un valor. El operador += puede usarse igualmente con variables de cadena.
var num = 20, cad = "buena";

      num += 5;           /*num
      adquiere el valor 25 (20 + 5) */

      cad += 's'  ;         /*cad
      adquiere el valor 'buenas' */

      num *= 10;         /*num adquiere
      el valor 250 (25*10) */



Operaciones y Funciones Matemáticas Básicas

Como realizar sumas de dos o mas números
1
2
var operador1, operador2, suma;
suma = operador1 + operador2;
Realizar resta (diferencia) de dos números
1
2
var operador1, operador2, resta;
resta = operador1 - operador2;
Multiplicación
1
2
var operador1, operador2, multiplicacion;
multiplicacion = operador1 * operador2;
División
1
2
var divisor, dividendo, division;
division = divisor / dividendo;
Potencia de un número
1
var potenica = Math.pow()
Raíz cuadrada
1
2
var raizCuadrara = Math.sqrt(9);
alert(raizCuadrara);
Redondear un valor
1
2
var redondea = Math.round(9.45);
alert("Valor redondeado 9.45= "+redondea);
Redondear un número al entero mas cercano
1
2
redondea = Math.ceil(9.01);
alert("Valor ceil 9.01= "+redondea);
Decrementar al entero inferior
1
2
redondea = Math.min(9.01);
alert("Valor min 9.01= "+redondea);
Decrementar al entero inferior
1
2
redondea = Math.floor(9.99);
alert("Valor floor 9.99= "+redondea);
// //decrementar al entero inferior
Obtener el valor máximo de una serie de valores
1
2
var valorMaximo = Math.max(20,15,10,3,28,64,74,13,76);
alert("El valor maximo es:"+valorMaximo);
// //Valor maximo de una serie de valores
Obtener el valor mínimo de una serie de valores
1
2
var valorMaximo = Math.min(20,15,10,3,28,64,74,13,76);
alert("El valor minimo es:"+valorMaximo);
// //Valor maximo de una serie de valores
Valor absoluto de un número
1
2
var absoluto = Math.abs(-10);
alert(absoluto);
// // valor absoluto
Calcular el seno de un número
1
2
var seno = Math.sin(30);
alert("El seno de 30 = "+seno);
// // Seno
Calcular el coseno de un número
1
2
var coseno = Math.cos(30);
alert("El coseno de 30 = "+coseno);
// // Coseno
Generar un número aleatorio
1
2
var aleatorio = Math.random();
alert(aleatorio);
// //Generar valor aleatorio
Generar un número aleatorio de 0 a X
1
2
var aleatorio = Math.floor(Math.random()*101);
alert(aleatorio);
// //Generar valor aleatorio entre 0 a 100
Generar un número aleatorio de 0 a X con decimales
//Generar valor aleatorio entre 0 a 10
1
2
var aleatorio = Math.floor(Math.random()*10) + Math.random();
alert(aleatorio);
Obtener el valor de PI
1
alert(Math.PI);



Funciones útiles para cadenas de texto

Funciones útiles para cadenas de texto
A continuación se muestran algunas de las funciones más útiles para el manejo de cadenas de texto:
length, calcula la longitud de una cadena de texto (el número de caracteres que la forman)
var mensaje = "Hola Mundo";
var numeroLetras = mensaje.length; // numeroLetras = 10
+, se emplea para concatenar varias cadenas de texto
var mensaje1 = "Hola";
var mensaje2 = " Mundo";
var mensaje = mensaje1 + mensaje2; // mensaje = "Hola Mundo"
Además del operador +, también se puede utilizar la función concat()
var mensaje1 = "Hola";
var mensaje2 = mensaje1.concat(" Mundo"); // mensaje2 = "Hola Mundo"
Las cadenas de texto también se pueden unir con variables numéricas:
var variable1 = "Hola ";
var variable2 = 3;
var mensaje = variable1 + variable2; // mensaje = "Hola 3"
Cuando se unen varias cadenas de texto es habitual olvidar añadir un espacio de separación entre las palabras:
var mensaje1 = "Hola";
var mensaje2 = "Mundo";
var mensaje = mensaje1 + mensaje2; // mensaje = "HolaMundo"
Los espacios en blanco se pueden añadir al final o al principio de las cadenas y también se pueden indicar forma explícita:
var mensaje1 = "Hola";
var mensaje2 = "Mundo";
var mensaje = mensaje1 + " " + mensaje2; // mensaje = "Hola Mundo"
toUpperCase(), transforma todos los caracteres de la cadena a sus correspondientes caracteres en mayúsculas:
var mensaje1 = "Hola";
var mensaje2 = mensaje1.toUpperCase(); // mensaje2 = "HOLA"
toLowerCase(), transforma todos los caracteres de la cadena a sus correspondientes caracteres en minúsculas:
var mensaje1 = "HolA";
var mensaje2 = mensaje1.toLowerCase(); // mensaje2 = "hola"
charAt(posicion), obtiene el carácter que se encuentra en la posición indicada:
var mensaje = "Hola";
var letra = mensaje.charAt(0); // letra = H
letra = mensaje.charAt(2);     // letra = l
indexOf(caracter), calcula la posición en la que se encuentra el carácter indicado dentro de la cadena de texto. Si el carácter se incluye varias veces dentro de la cadena de texto, se devuelve su primera posición empezando a buscar desde la izquierda. Si la cadena no contiene el carácter, la función devuelve el valor -1:
var mensaje = "Hola";
var posicion = mensaje.indexOf('a'); // posicion = 3
posicion = mensaje.indexOf('b');     // posicion = -1
Su función análoga es lastIndexOf():
lastIndexOf(caracter), calcula la última posición en la que se encuentra el carácter indicado dentro de la cadena de texto. Si la cadena no contiene el carácter, la función devuelve el valor -1:
var mensaje = "Hola";
var posicion = mensaje.lastIndexOf('a'); // posicion = 3
posicion = mensaje.lastIndexOf('b');     // posicion = -1
La función lastIndexOf() comienza su búsqueda desde el final de la cadena hacia el principio, aunque la posición devuelta es la correcta empezando a contar desde el principio de la palabra.
substring(inicio, final), extrae una porción de una cadena de texto. El segundo parámetro es opcional. Si sólo se indica el parámetro inicio, la función devuelve la parte de la cadena original correspondiente desde esa posición hasta el final:
var mensaje = "Hola Mundo";
var porcion = mensaje.substring(2); // porcion = "la Mundo"
porcion = mensaje.substring(5);     // porcion = "Mundo"
porcion = mensaje.substring(7);     // porcion = "ndo"
Si se indica un inicio negativo, se devuelve la misma cadena original:
var mensaje = "Hola Mundo";
var porcion = mensaje.substring(-2); // porcion = "Hola Mundo"
Cuando se indica el inicio y el final, se devuelve la parte de la cadena original comprendida entre la posición inicial y la inmediatamente anterior a la posición final (es decir, la posición inicio está incluida y la posición final no):
var mensaje = "Hola Mundo";
var porcion = mensaje.substring(1, 8); // porcion = "ola Mun"
porcion = mensaje.substring(3, 4);     // porcion = "a"
Si se indica un final más pequeño que el inicio, JavaScript los considera de forma inversa, ya que automáticamente asigna el valor más pequeño al inicio y el más grande al final:
var mensaje = "Hola Mundo";
var porcion = mensaje.substring(5, 0); // porcion = "Hola "
porcion = mensaje.substring(0, 5);     // porcion = "Hola "
split(separador), convierte una cadena de texto en un array de cadenas de texto. La función parte la cadena de texto determinando sus trozos a partir del carácter separador indicado:
var mensaje = "Hola Mundo, soy una cadena de texto!";
var palabras = mensaje.split(" ");
// palabras = ["Hola", "Mundo,", "soy", "una", "cadena", "de", "texto!"];
Con esta función se pueden extraer fácilmente las letras que forman una palabra:
var palabra = "Hola";

var letras = palabra.split(""); // letras = ["H", "o", "l", "a"]