Tipos de datos

Guarda el nombre de alguien, su edad y si está conectado, y ya habrás utilizado tres tipos de valor diferentes. El nombre es texto, la edad es un número y la bandera de conexión es un sí o no. JavaScript trata cada uno de estos como un tipo distinto y maneja cada uno de manera diferente. Este capítulo trata sobre los pocos tipos que encuentras primero y cómo saber cuál estás sosteniendo.
Los tipos básicos
Tres tipos cubren la mayoría de lo que almacenas. Una cadena es texto, entre comillas. Un número es cualquier número, para contar o medir. Un booleano es un valor sí o no, y tiene solo dos opciones: true o false.
const name = "María"; // una cadena: texto
const age = 27; // un número
const isLoggedIn = true; // un booleano: true o falseUsas una cadena para cualquier cosa que se lea como palabras: un nombre, un mensaje, un color. Usas un número para cualquier cosa que puedas contar o calcular. Usas un booleano siempre que la respuesta sea una de dos opciones, como si una casilla está marcada. Verás mucho más de esto en cadenas y números.
string para texto entre comillas, number para cualquier cosa numérica, y boolean para una respuesta true o false. Elige el tipo que coincida con el tipo de cosa que estás almacenando. Un nombre es una cadena, una edad es un número, una casilla es un booleano. Nada: null y undefined
A veces un valor falta, y JavaScript tiene dos formas de decirlo. undefined significa que aún no se ha dado ningún valor. Si haces una variable sin establecerla, su valor es undefined.
let score;
console.log(score); // undefinednull significa vacío a propósito. Lo usas tú mismo, para decir "esto no tiene valor ahora, y lo hice a propósito".
let winner = null;
console.log(winner); // nullLa versión corta: undefined es JavaScript diciendo "nada aquí todavía", y null eres tú diciendo "nada aquí, deliberadamente".
undefined es el predeterminado de JavaScript cuando nada se ha establecido todavía. null es el que escribes tú mismo para significar "vacío a propósito". Si nunca le diste a una variable un valor, espera undefined. Verificar un tipo con typeof
Cuando no estás seguro de qué tipo es un valor, typeof te lo dice. Ponlo delante de un valor y te devuelve una cadena que nombra el tipo.
console.log(typeof "María"); // "string"
console.log(typeof 27); // "number"
console.log(typeof true); // "boolean"Nota que la respuesta siempre es texto, una cadena como "number", no el tipo en sí. Eso es útil cuando quieres verificar con qué estás tratando antes de usarlo.
typeof delante de un valor y te dice el tipo, como una cadena como "number". Es la forma más rápida de verificar qué estás sosteniendo cuando no estás seguro. La respuesta siempre es texto, así que typeof 27 te da "number", comillas y todo. La visión más amplia de los tipos
Has conocido los tipos cotidianos: cadena, número, booleano, más null y undefined. Eso es suficiente para almacenar la mayoría de lo que un programa pequeño necesita. Capítulos posteriores agregan formas de agrupar valores juntos, pero cada uno de esos grupos sigue siendo construido a partir de los tipos simples que ya has visto.
Por ahora, la ganancia es saber que cada valor tiene un tipo, y que el tipo decide qué puedes hacer con el valor. Un número puedes sumarlo; una cadena puedes unirla; un booleano puedes verificarlo. Ten operadores en mente como el próximo paso, porque es donde comienzas a combinar estos valores.
null y undefined, cubren la mayoría de lo que un programa pequeño almacena. Capítulos posteriores agrupan valores juntos, pero todos están construidos a partir de estos. Hacia dónde van los tipos desde aquí
Cada valor que escribes, cada uno que lees de vuelta, lleva un tipo, y adquirir fluidez al nombrarlo es la base para todo lo que sigue. Los próximos capítulos toman los dos que manejarás más y profundizan: cadenas para trabajar con texto, y números para cálculo. Después de eso, operadores es donde estos tipos comienzan a encontrarse, compararse, combinarse y ocasionalmente convertirse, y saber qué tipo estás sosteniendo es lo que evita que te sorprenda.

