Por ahí podrá leer o escuchar que JavaScript no está tipificado en los datos que gestiona, pero esa afirmación es incorrecta.
Es cierto que en JavaScript se puede asignar cualquier valor o tipos diferentes a una variable, pero JavaScript si tiene sus tipos de datos. Proporciona tipos de datos primitivos y tipos de datos como objetos.
Los tipos de datos son asignados a las variables de forma automática por parte de JavaScript, es decir que a diferencia de los lenguajes tipados, cuando existe una mutación (cambio de valor), está variable cambia de tipo.
Tipo de datos primitivos
Los tipos de datos primitivos son:
- Numéricos
- Cadenas (Strings)
- Plantillas de cadena (Template Strings)
- Booleanos
- Nulos (Null)
- Indefinidos
Numéricos o Números
JavaScript internamente sólo tiene un tipo de dato para los números: cada número es flotante.
Cada literal numérico es un número representado en el código fuente, y dependiendo de cómo esté escrito, puede ser un literal entero o un literal de coma flotante.
Enteros:
0 5756787623 0xCC //hexadecimal
Flotantes:
3.14
.234
6.2e5
Cadenas
Una cadena es una secuencia de caracteres. Esta secuencia es definida en el mismo código fuente. Se encuentran entre comillas simples o dobles.
'Esto es un String'
"Esto es otro String"
Las cadenas puede abarcar varias líneas, para ello debemos utilizar la barra invertida.
"Primera línea \
Segunda línea "
Las cadenas se pueden unir utilizando el operador +: «Una » + ‘Cadena’
Plantillas de cadenas (Templates Strings)
Introducidos a partir de ES2015, los Templates Strings son literales de cadenas más potentes, al momento de definir cadenas.
const un_string = `Es una cadena`
Se puede realizar sustitución de cadenas sobre cualquier expresión, y además una forma más rápida de utilizar multilínea.
`esto ${un_string}` `un string con ${obj.un_string}` `Primera línea Segunda línea`
Booleanos
JavaScript introduce dos palabras para el manejo de datos booleanos: verdadero (true) y falso (false), son utilizados en muchas operaciones de comparación (<, >, ==, ====, etc).
No solo aceptan valores true y false, sino también valores de verdad y falsedad, ejemplo de valores interpretados como falsos:
0 -0 NaN undefined null '' //cadena vacía.
Todo lo contrario o lo demás se considera como verdadero.
Nulos (Null)
Los tipos de datos Nulos, son valores especiales, indican la ausencia de algún valor.
Su uso es común en muchos otros lenguajes de programación, por ejemplo nil o none, en otros lenguajes como Python,
Indefinido (Undefined)
Indica que se creo una variable, pero esta no fue inicializada con algún valor, es por ello que JavaScript no puede asignarle un tipo de dato.
var variable; typeof variable === 'undefined'
Tipos de datos Objetos
En JavaScript cualquier cosa que no sea un dato primitivo, es un objeto.
Los tipos objetos tienen propiedades y también tienen métodos que pueden actuar sobre esas propiedades.
Estos tipos de datos lo profundizaremos en un próximo artículo.
Cómo encontrar el tipo de una variable
Cualquier variable tiene un tipo asignado. Utilice el operador typeof para obtener una representación en cadena del tipo de dato de la variable.
typeof 1 === 'number' typeof '1' === 'string' typeof [1, 2, 3] === 'object' typeof true === 'boolean'
Recuerda que si te gusto el artículo, no olvides compartirlo en tus redes, y si deseas aprender más sobre JavaScript, te invitamos a estar atento a esta sección de nuestro blog.