Conoce el operador tipeof de Javascript, el operador de control de tipo, que permite informar del tipo de una variable existente.
El listado de operadores que venimos ofreciendo para el Manual de Javascript se completa con el operador typeof, que veremos a continuación.
Hemos podido comprobar que, para determinados operadores, es importante el tipo de datos que están manejando, puesto que si los datos son de un tipo se realizarán operaciones distintas que si son de otro.
Por ejemplo, cuando utilizábamos el operador +, si se trataba de números los sumaba, pero si se trataba de cadenas de caracteres las concatenaba. Vemos pues que el tipo de los datos que estamos utilizando sí que importa y que tendremos que estar pendientes este detalle si queremos que nuestras operaciones se realicen tal como esperábamos.
Para comprobar el tipo de un dato se puede utilizar otro operador que está disponible a partir de javascript 1.1, el operador typeof, que devuelve una cadena de texto que describe el tipo del operador que estamos comprobando.
var boleano = true
var numerico = 22
var numerico_flotante = 13.56
var texto = "mi texto"
var fecha = new Date()
document.write("<br>El tipo de boleano es: " + typeof boleano)
document.write("<br>El tipo de numerico es: " + typeof numerico)
document.write("<br>El tipo de numerico_flotante es: " + typeof numerico_flotante)
document.write("<br>El tipo de texto es: " + typeof texto)
document.write("<br>El tipo de fecha es: " + typeof fecha)
Si ejecutamos este script obtendremos que en la página se escribirá el siguiente texto:
El tipo de boleano es: boolean
El tipo de numerico es: number
El tipo de numerico_flotante es: number
El tipo de texto es: string
El tipo de fecha es: object
En este ejemplo podemos ver que ser imprimen en la página los distintos tipos de las variables. Estos pueden ser los siguientes:
- boolean, para los datos boleanos. (True o false)
- number, para los numéricos.
- string, para las cadenas de caracteres.
- object, para los objetos.
- function, para las funciones.
- undefined, para variables declaradas a las que no se les ha asignado valores.
Queremos destacar tan sólo dos detalles más:
- Los números, ya tengan o no parte decimal, son siempre del tipo de datos numérico.
- Una de las variables es un poco más compleja, es la variable fecha que es un objeto de la clase Date(), que se utiliza para el manejo de fechas en los scripts. La veremos más adelante, así como los objetos.
- Ten en cuenta también que las funciones en Javascript son tratadas como el
Recomendaciones con typeof
En nuestra opinión no es muy adecuado preguntar constantemente el tipo de una variable, para hacer cosas distintas cuando tiene un tipo u otro. Lo normal es que tengas claro qué tipo de operación deseas realizar en un momento dado y que, si no estás seguro si te ha llegado la variable de un tipo o de otro, la conviertas con alguna función como parseInt() o parseFloat(), que veremos más adelante.
El caso más útil que ahora consigo recordar es preguntar si el tipo de una variable es undefined, lo que te puede dar la respuesta sobre si la variable ha sido inicializada o no.
let variable;
if(typeof variable == 'undefined') {
console.log('La variable vale undefined, no tiene valor definido);
}
Otro caso que se suele usar bastante es a la hora de hacer debug, cuando necesitas encontrar errores en tu código, ante funcionamientos erráticos e inesperados. En esos casos es útil consultar el tipo de las variable, porque a veces en Javascript te traen sorpresas que hacen que tus programas no acaben de funcionar bien.
Con esto ya hemos terminado de ver la lista de operadores que podemos utilizar en Javascript y en el próximo artículo pasaremos a conocer las estructuras de control.
Miguel Angel Alvarez
Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...