Variables, Operadores y Controladores en Javascript
Variables, Operadores y Controladores en Javascript
Semestre V
Tecnología Desarrollo Informático
Programación Javascript
PROGRAMACIÓN JAVASCRIPT
Tipos de variables
JavaScript es un lenguaje débilmente tipado. Esto quiere decir que no indicamos de qué
tipo es cada variable que declaramos. Todas las variables admiten todos los tipos, y
pueden ser reescritas. Es una de las cosas buenas y malas que tiene JavaScript.
Definición
Para definir una variable en JavaScript, utilizamos la palabra reservada var y le damos
un nombre, por ejemplo:
var miDato;
var dato = 5;
var
dato;
dato =
5;
Debemos intentar que los nombres de las variables sean lo más descriptivos posibles,
de manera que con solo leerlos sepamos que contienen y así nuestros desarrollos
serán más ágiles.
Los nombres de las variables siempre han de comenzar por una letra, el símbolo $ o
_ , nunca pueden comenzar por números u otros caracteres especiales. JavaScript
también distingue entre mayúsculas o minúsculas, por tanto, no es lo mismo miDato
Tipos de variables
JavaScript es un lenguaje débilmente tipado. Esto quiere decir que no indicamos de qué
tipo es cada variable que declaramos. Todas las variables admiten todos los tipos, y
pueden ser reescritas. Es una de las cosas buenas y malas que tiene JavaScript.
Definición
Para definir una variable en JavaScript, utilizamos la palabra reservada var y le damos
un nombre, por ejemplo:
var miDato;
var dato = 5;
var
dato;
dato =
5;
Debemos intentar que los nombres de las variables sean lo más descriptivos posibles,
de manera que con solo leerlos sepamos que contienen y así nuestros desarrollos
serán más ágiles.
Los nombres de las variables siempre han de comenzar por una letra, el símbolo $ o
_ , nunca pueden comenzar por números u otros caracteres especiales. JavaScript
también distingue entre mayúsculas o minúsculas, por tanto, no es lo mismo miDato
que MiDato o midato, para JavaScript son nombres diferentes y las tratará de
maneradiferente.
Tipos
JavaScript tiene 4 tipos primitivos de datos para almacenar en variables. Estos son:
number
boolean
string
undefined
number
Sirve para almacenar valores numéricos. Son utilizados para contar, hacer cálculos y
comparaciones. Estos son algunos ejemplos:
var miEntero = 1;
var miDecimal = 1.33;
boolean
Este tipo de dato almacena un bit que indica true o false . Los valores booleanos
seutilizan para indicar estados. Por ejemplo, asignamos a una variable el estado false
alinicio de una operación, y al finalizarla lo cambiamos a true . Después realizamos la
comprobación necesaria.
var si = true;
var no = false;
string
undefined
Este tipo se utiliza cuando el valor de una variable no ha sido definido aún o no existe.
Por ejemplo:
Otro tipo de almacenamiento de datos que tiene JavaScript son los Objetos. En
JavaScript todo es un objeto, hasta las funciones. Todo hereda de la clase Object. Se
pueden definir como una estructura donde se agregan valores. Dentro de las clases que
heredan de Object tenemos Array, Date, etc.
Operadores
Operadores aritméticos
JavaScript posee operadores para tipos y objetos. Estos operadores permiten formar
expresiones. Las más comunes son las operaciones aritméticas.
Suma de números: 5 + 2
Resta: 5 - 2
Divisiones: 3 / 3
Multiplicaciones: 6 * 3
JavaScript también posee los operadores post y pre incremento y decremento que
añaden uno o restan uno a la variable numérica en la que se aplican. Dependiendo si
son pre o post, la variable es autoincrementada o decrementada antes o después de la
sentencia. Veamos un ejemplo:
var x = 1; // x=1
Operador typeof
El operador typeof es un operador especial que nos permite conocer el tipo que tiene
la variable sobre la que operamos. Ejemplos:
typeof 5; // number
Esto es muy útil para conocer en un momento dado que tipo estamos utilizando y
prevenir errores en el desarrollo.
Operadores booleanos
Los tipos booleanos sólo tienen dos valores posibles: true y false (Verdadero y
Falso). Pero disponen de varios operadores que nos permiten transformar su valor.
Negación
!false = true
!!true = true
Identidad o Igualdad
Comparación
Podemos comparar si dos valores son menores, mayores o iguales con los operadores
de comparación representados por los símbolos < , > , <= y >= . El resultado de la
comparación nos devuelve true o false dependiendo de si es correcto o no.
5 > 3 // true
5 < 3 // false
3 >= 3 // true
2 <= 1 // false
Operador AND
Es un operador lógico que devuelve true siempre que todos los valores comparadossean
true . Si uno de ellos es false , devuelve false . Se representa con el símbolo
&& . Veamos un ejemplo
Es muy utilizado para devolver valores sin que estos sean modificados, por ejemplo
para comprobar si una propiedad existe, etc. La lógica que sigue es: Si el primer valor
es false devuelve ese valor, si no, devuelve el segundo:
0&& true
// 0, porque el número 0 se considera
// un valor "false"
1&& "Hola"
// "Hola", porque el número 1 (o distinto de 0)
Hay ciertos valores en JavaScript que son evaluados como false y son: el número 0 ,
un string vacío "" , el valor null , el valor undefined y NaN .
Operador OR
Es otro operador lógico que funciona a la inversa que AND. Devuelve false si los
valores comparados son false . En el caso de que un valor sea true devolverá
true . Se representa con el símbolo || .
true || true // true
También es muy utilizado para asignar valores por defecto en nuestras funciones. La
lógica que sigue es: Si el primer valor es true, devuelve ese valor.
Condicionales
Los condicionales son expresiones que nos permiten ejecutar una secuencia de
instrucciones u otra diferente dependiendo de lo que estemos comprobando. Permiten
establecer el flujo de ejecución de los programas de acuerdo a determinados estados.
Asignación condicional
(true) 5 : 2; // Devuelve 5
(false) 5 : 2; // Devuelve 2
Sentencia IF
Como hemos visto antes, dependiendo del resultado de una condición, obtenemos un
valor u otro. Si el resultado de la condición requiere más pasos, en lugar de utilizar la
asignación condicional, es mejor emplear la sentencia if . Tenemos 3 formas de
aplicarlo:
if simple
if (condicion) {
bloque_de_codigo
if/else
if (condicion) {
bloque_de_codigo_1
else {
bloque_de_codigo_2
}
Con este tipo de sentencia, si se cumple la condición pasa como el anterior modelo, se
ejecuta el bloque de código 1, y si la condición a evaluar no se cumple, se ejecuta el
bloque de código 2.
if/else if
if (condicion_1) {
bloque_1
else if (condicion_2) {
bloque_2
else if (condicion_3) {
bloque_3
else {
En elbloque_4
ejemplo anterior, se comprueba la condición 1, si se cumple se ejecuta el bloque 1
y si
} no, se comprueba si cumple la condición 2 y en ese caso se ejecutaría el bloque 2,
y así sucesivamente hasta que encuentre una condición que se cumpla o se ejecute el
bloque 4 del último else .
Sentencia Switch
Con Switch, podemos sustituir un conjunto de sentencias if-else de una manera más
legible. Se comprueba la condición, y según el caso que devuelva, ejecutará un bloque
u otro. Para poder separar los bloques, se utiliza la palabra break que permite salir de
toda la sentencia. Tiene un bloque default que se ejecuta en el caso de que no se
cumpla ningún caso. Veamos un ejemplo, esto sería un switch siguiendo el ejemplo
anterior del if-else :
switch(condicion) {
case condicion_1:
bloque_1
break;
case condicion_2:
bloque_2
break;
case condicion_3:
bloque_3
break;
default:
bloque_4
}
El bloque default no es obligatorio.