Cadenas de texto

Estás construyendo un saludo para un usuario que ha iniciado sesión, y tienes su nombre en una variable. Necesitas que la página diga "Bienvenido de vuelta, Carlos" sin que tengas que escribir "Carlos" a mano, porque mañana será María, y el día siguiente será alguien que nunca has oído hablar. El texto que puedes construir, medir y remodelar al vuelo es una cadena de texto, y este capítulo trata sobre cómo trabajar con ellas.
Hacer cadenas de texto
Una cadena de texto es texto: cualquier serie de caracteres envueltos en comillas. Puedes usar comillas simples o dobles, y se comportan de la misma manera, así que elige una y mantente consistente.
const firstName = "Carlos";
const greeting = "Bienvenido de vuelta";La forma más útil de construir una cadena de texto es un literal de plantilla, escrito con acentos graves en lugar de comillas. Dentro de un literal de plantilla puedes insertar un valor en el texto con ${...}, y JavaScript completa lo que ese valor contenga:
const firstName = "Carlos";
const message = `Bienvenido de vuelta, ${firstName}`;
console.log(message); // Bienvenido de vuelta, CarlosEse ${firstName} es un espacio. Cuando se construye la cadena de texto, el espacio se reemplaza por el valor de firstName. Recurre a los literales de plantilla siempre que estés construyendo texto a partir de piezas.
${...} que se rellenan con tus valores. Esa es la herramienta que usarás más. Unir y medir
Puedes unir dos cadenas de texto con el operador +. Esto se llama concatenación:
const firstName = "María";
const greeting = "Hola " + firstName;
console.log(greeting); // Hola MaríaObserva el espacio dentro de 'Hola '. La concatenación pega las cadenas de texto exactamente como están escritas, así que si olvidas el espacio obtendrás HolaMaría. Un literal de plantilla generalmente se lee mejor para el mismo trabajo: `Hola ${firstName}`.
Cada cadena de texto conoce su propia longitud. Pregúntale con .length:
const firstName = "María";
console.log(firstName.length); // 5También puedes leer un solo carácter por su posición, contando desde cero, usando corchetes:
const firstName = "María";
console.log(firstName[0]); // MEl primer carácter está en la posición 0, no 1. Ese conteo basado en cero está en todas partes en JavaScript, así que vale la pena acostumbrarse ahora.
+, pero recuerda incluir tus propios espacios, o Hola y un nombre se juntan. Un literal de plantilla generalmente es más limpio para lo mismo. Usa .length para contar caracteres, y corchetes como name[0] para leer uno por posición, contando desde cero. Métodos útiles de cadena de texto
Las cadenas de texto vienen con métodos integrados: acciones que ejecutas en una cadena de texto escribiendo un punto y el nombre del método. Aquí están los que más usarás.
Cambia el caso con toUpperCase() y toLowerCase():
const firstName = "carlos";
console.log(firstName.toUpperCase()); // CARLOSVerifica si una parte del texto aparece dentro de otra con includes(), que responde con true o false:
const message = "Bienvenido de vuelta";
console.log(message.includes("vuelta")); // trueCorta parte de una cadena de texto con slice(), dándole la posición de inicio y dónde parar. Limpia espacios extraños en los extremos con trim(). Y reemplaza una parte del texto por otra con replace():
const raw = " Hola ";
console.log(raw.trim()); // Hola
const message = "Hola Carlos";
console.log(message.replace("Carlos", "María")); // Hola MaríaHay muchos más métodos de cadena de texto, y no necesitas memorizarlos. Aprende estos cinco, y busca el resto cuando un trabajo lo requiera.
toUpperCase(), includes() para una verificación de sí o no, slice() para cortar una parte, trim() para eliminar espacios extraños, y replace() para reemplazar texto. Hay muchos más, así que aprende estos cinco y busca el resto cuando los necesites. A dónde van las cadenas de texto después
Las cadenas de texto son uno de los bloques de construcción principales de JavaScript, y ahora tienes las piezas que importan: hacerlas con comillas o literales de plantilla, unirlas y medirlas, y remodelarlas con métodos que siempre devuelven algo nuevo. El mismo patrón de punto y método que usaste aquí aparece nuevamente en otros tipos, más notablemente cuando empiezas a trabajar con listas en métodos de array.
El texto también raramente viaja solo. En el momento en que muestras un conteo, un precio o un total, estás mezclando cadenas de texto con números, y los literales de plantilla son cómo unes los dos juntos limpiamente.

