En la entrada sobre la sintaxis básica de las variables en Javascript vimos que una variable es un recurso de memoria del ordenador reservado para alojar una información.
Las variables tienen un continente que puede o no almacenar un contenido. En caso de no tenerlo javascript guarda un espacio de memoria con el valor undefined.
Se definen varios tipos de variable según si contienen números, textos, listas, …
En algunos lenguajes pueden haber distintos tipos de variables para un tipo similar de información. Por ejemplo para el caso de los números pueden ser de tipo integer, float, double,…; para el texto texto char, string,… cada lenguaje de programación tiene sus particularidades.
Todos los lenguajes de programación tienen en común que se usan variables. Si un lenguaje no tiene variables entonces muy probablemente no estemos programando. Seguramente estaremos escribiendo mediante un lenguaje de marcado como el html o de hojas de estilo en cascada como el css.Variables tipo texto
Listas (array, vector, arreglo)
Tipos de variables en javascript
En javascript se distinguen 5 tipos de variables: de tipo texto (string), número, booleanas , objetos y funciones.
Los textos, números y booleanos son intuitivos. En algún momento de nuestras vidas los hemos visto en la escuela. Sin embargo los objetos y las funciones no son tan evidentes si nunca has programado.
Un objeto es un tipo de variable más abstracta que contiene información sobre las diversas características de un ente. Por ejemplo si quisiéramos almacenar los datos sobre una persona diríamos que esta tiene un peso, un nombre, una altura,… La persona sería la variable objeto. El peso, nombre, altura y diversas características de la persona serían las propiedades del objeto.
En cuanto a los objetos en javascript hay de 3 tipos. Objeto en el sentido estricto de la palabra, listas y fechas. La diferencia entre las listas y el objeto sentido estricto es que en las listas la información está numerada y ordenada y en los objetos no. Lo veremos en detalle más adelante. Vayamos por pasos.[vc_custom_heading text=»Variables de tipo texto» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Las variables de tipo texto almacenan una cadena de caracteres.
Pueden ir entre comillas simples o entre comillas dobles.
El uso de comillas simples o comillas dobles es indistinto. Lo importante es el orden de como las usamos. Si por necesidades del programa alguna vez necesitamos usar comillas simples, entonces usaríamos para la variable de tipo texto comillas simples. Y viceversa. Lo único que no es permitido es mezclar comillas simples y cerrarlas con comillas dobles. Y viceversa.[vc_custom_heading text=»Operaciones aritméticas con las variables de tipo texto» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Una suma de cadenas de texto resulta en una concatenación de estas.
Cuando sumamos números encerrados dentro de un string el resultado es una concatenación de los números y no una suma aritmética.
Cuando multiplicamos números encerrados dentro de strings javascript transforma los textos en número y procesa correctamente la multiplicación.
Esta es precisamente una característica muy interesante de JS. Las variables evolucionan en tiempo real de un tipo a otro. A diferencia de otros lenguajes.[vc_custom_heading text=»Variables de tipo numérico» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]Las variables numéricas almacenan números.
En javascript no hay distinción entre números enteros o con decimales. No hay integers ni floats. Todas se consideran una variable de tipo «number«. No obstante, el tiempo de cálculo y los recursos requeridos por la computadora aumentas cuando hay decimales de por medio. Además, también hay cuestiones relativas a los redondeos que hay que tener en cuenta en programación avanzada.
A diferencia de con los strings, las variables numéricas se caracterizan porqué no van entre comillas de ningún tipo.[vc_custom_heading text=»Operaciones aritméticas con variables de tipo número» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Las operaciones básicas que los números admiten son:
- suma , +
- resta, –
- división, /
- multiplicación, *
- operación módulo (el resto de la división) %
Existen expresiones también que en realidad son abreviaciones de otras expresiones más larga.
- x++ equivale a x = x + 1;
- ++x equivale a x = x + 1;
- x– equivale a x = x – 1;
- –x equivale a x = x – 1;
En cualquiera de los casos es fundamental fijarse que el signo de (=) hace referencia a una asignación y no a una igualdad. No hay una ecuación de primer grado. Es la forma con la que le indicamos que una variable pasa a tener un nuevo valor resultado de operar con el que tenía hasta el momento.[vc_custom_heading text=»Variables de tipo booleano» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]Las variables booleanas almacenan los valores true o false.
En su defecto los booleanos pueden valer 1 o 0.[vc_custom_heading text=»Operaciones con variables de tipo booleano» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Las operaciones básicas que los boolenos admiten son:
- igualdad en contenido , ==
- igualdad en tipo de variable y contenido, ===
- negación, !
- «no igual que«, !=
- and, &&
- or, ||
- >= , mayor que o igual; <, menor que
- <= , menor que o igual; >, mayor que
Estas operaciones responden a las tablas de la verdad del álgebra de boole.
- si cierto y cierto –> cierto; si cierto o cierto –> cierto
- si cierto y falso –> falso ; pero si cierto o falso –> cierto
- si falso y cierto –> falso ;pero si falso o cierto –> cierto
- si falso y falso –> falso; pero si falso o falso –> falso
A diferencia de las operaciones anteriores el signo de (==) hace referencia a una comparación y no a una asignación. Confundir = y == es un error típico cuando todavía no estamos familiarizados con el código.[vc_custom_heading text=»Variables de tipo lista» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]Las variables listas son un tipo especial de objeto que almacena un inventario de contenidos ordenados que pueden ser de cualquier tipo de variable.
Una lista puede almacenar texto, números, booleanas, otras listas y objetos.
También se conocen como vectores o arreglos.
Cuando tenemos una lista de listas entonces podemos tener una matriz de datos.[vc_custom_heading text=»Propiedades de las listas» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Las listas no se pueden sumar, restar o multiplicar. Para hacer operaciones entre contenidos de listas hay que llamar a los contenidos específicos de cada una de la lista con las que queremos operar.
Los datos en una lista de javascript no están ordenados (a diferencia de otros lenguajes en que si lo pueden estar).
Las listas tienen una propiedad «.length» que nos indica el número de elementos de la lista.
El primer elemento de una lista es el elemento cero.
El último elemento de una lista es el elemento «lista[lista.length-1]»
Existen una serie de operaciones programadas para las listas que se denominan métodos. Hablaremos de ellos más adelante en otra publicación.[vc_custom_heading text=»Objetos» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]
Los objetos son variables que nos ayudan a almacenar diversas propiedades. Pueden almacenar cualquier tipo de variable: texto, números, listas, booleanos, otros objetos e incluso funciones.
Para acceder al valor almacenado en una propiedad de un objeto devemos escribir «persona.nombrePropiedad»
Una particularidad muy importante es que los objetos no necesitan tener sus propiedades ordenadas.
Cada propiedad se separa por coma «,» a excepción de la última.
En los objetos las propiedades van encerradas dentro de «{ }»
Para hacer operaciones con los valores de las propiedades se debe hacer propiedad propiedad. Por ejemplo para concatenar el nombre y el apellido deberíamos escribir
persona.nombre + » «+ persona.apellido; sería correcto
nombre + apellido; sería incorrecto
Observación: Como curiosidad fijaros que cuando accedéis a window.alert(), document.write() o console.log() en realidad estáis accediendo a propiedades de los objetos window, document y consola que almacenan las propiedades alert(), write() y log().Y hasta aquí esta pequeña introducción a los distintos tipos de variables que existen en Javascript y cómo podemos operar con ellas. Únicamente nos ha quedado desarrollar el tema de las funciones pero esto lo veremos el próximo día que hablemos de JS.
Deja una respuesta