Todos los lenguajes de programación tienen estructuras de datos integradas, pero estas a menudo difieren de un lenguaje a otro.
En los lenguajes debilmente tipados no especificamos el tipo de valor al declarar las variables y podemos utilizar el mismo nombre de variable para contener distintos tipos de datos:
let edad = 25; // la variable es un numero.
let edad = "viejo" // ahora la variable es un string.
let edad = true // ahora la variable es un booleano.
Tipos de datos
En el ultimo estandar de ECMAScript se definen 9 tipos de datos, 6 de los cuales son primitivos.
En JavaScript, un primitive (valor primitivo, tipo de dato primitivo) son datos que no son un objeto y no tienen métodos. A demas todos los primitivos son inmutables (osea, no se pueden modificar).
Tipos primitivos
Undefined
Es un valor primitivo que es automáticamente asignado a las variables que solo han sido declaradas o a los argumentos formales para los cuales no existen argumentos reales.
let hola;
console.log(hola) // undefined
Boolean
Un booleano es un dato lógico que solo puede tener los valores true o false.
let verdadero = true;
let falso = false;
console.log(verdadero, falso); // true false
Number
Es un tipo de dato numerico utilizando el formato en coma flotante de doble precisión (para saber mas: Formato en coma flotante de doble precisión.
let numero = 17;
let numeroflotante = 25.6;
String
Es un string es una secuencia de caracteres usado para representar el texto.
let nombre = "Diego"
BigInt
Es un tipo de dato numerico que puede representar números enteros en el formato de precision arbitrario.
let numeroBigInt = 2n;
Para mas info: BigInt
Symbol
Un Symbol es un tipo de dato primitivo en cuyos casos son únicos e inmutables. Representa un identificador unico y es creado con Symbol(), tambien puede agregarsele una descripcion Symbol("Descripcion"), aunque se declaren varios symbol con la misma descripcion no son iguales.
let id1 = Symbol("id");
let id2 = Symbol("id");
console.log(id1 == id2); // false
Para mas info: Symbol
Null
Es un tipo de dato especial que solo contiene el valor null. A diferencia de otros lenguajes en JavaScript es sólo un valor que representa “nada”, “vacío” o “valor desconocido”.
let edad = null; // esto indica que la edad es desconocida o esta vacio.
Object
El tipo objeto es un tipo de dato especial ya que pueden contener colecciones de datos y entidades mas especiales.
let objeto = {
nombre: "Diego",
apellido: "Maradona",
numero: 10,
eterno: true,
}
Function
Es una estructura sin datos, la cual es un fragmento de codigo que puede ser llamada por otro codigo o por si mismo, o por una variable que haga referencia a la funcion.
function saludar() {
console.log("Hola");
}
saludar() // "Hola"