JavaScript incluye múltiples tipos nativos, como por ejemplo los número, las cadenas, los booleanos o los objetos. El modo más sencillo mediante el cual puedes obtener el tipo de una variable o de una constante consiste en usar la sentencia typeof
, que permitirá comprobar el tipo de cualquier valor que esté asignado a una constante o a una variable.
Aquí tienes un ejemplo sencillo en el que usamos el operador typeof
:
typeof 'soy una cadena';
Tal y como puedes ver no usamos paréntesis, ya que typeof
no es una función, sino un operador. El ejemplo anterior devolverá 'string'
. Si quieres puedes comprobarlo mostrando el resultado por la consola:
console.log(typeof 'soy una cadena');
El operador typeof
devolverá alguno de los siguientes tipos cuando se utilice:
'undefined'
'boolean'
'number'
'bigint'
'string'
'object'
'function'
'symbol'
Tal y como puedes ver no existe un tipo para el valor null
. Esto es debido a que el tipo null
es tratado en JavaScript como un objeto, siendo una de las diferencias entre null y undefined en JavaScript. Del mismo modo, los arrays en JavaScript también son objetos, por lo que la sentencia typeof ['a', 'b','c']
devolverá el tipo 'object'
.
Hay un tipo de objeto bastante especial en JavaScript que deriva de los objetos. Se trata de las funciones, de tipo 'function'
. Las funciones son objetos en toda regla, y incluso podemos agregar propiedades y métodos a las funciones, tal y como podemos ver en el siguiente ejemplo:
const saludo = () => {};
saludo.hola = true;
Sin embargo, las funciones disponen de su propio tipo, que es el tipo 'function'
. Vamos a proponer la siguiente función:
const miFuncion = () => {};
Si luego ejecutamos la sentencia typeof miFuncion
, el resultado será 'function'
.
Todos los tipos que hemos visto son tipos primitivos, a excepción de ‘object’ y ‘function’. Si quieres puedes consultar con más detalle las diferencias entre los objetos y los tipos primitivos.
Si quieres, puedes consultar los siguientes tutoriales, en donde explicamos cómo saber se un valor es de un determinado tipo específico.
- Valor numérico: Cómo saber si un valor es un número en JavaScript
- Array: Cómo saber si un valor es un array en JavaScript
Y esto ha sido todo.