Artículo original: What is a String in JS? The JavaScript String Variable Explained

Al aprender JavaScript o cualquier otro lenguaje de programación, te encontrarás con el término cadena de caracteres (string en Inglés).

Una cadena de caracteres representa datos textuales, los cuales son parte fundamental de muchas aplicaciones. También se utilizan cadenas para interactuar con usuarios a través de avisos, alertas y otras formas de datos ingresados por el usuario y mostrados al usuario.

En este artículo aprenderás qué es una cadena de caracteres, cómo funciona en JavaScript, cómo crear una cadena y cómo escapar las comillas y los apóstrofes.

¿Qué es una cadena de caracteres en JavaScript?

En JavaScript, una cadena de caracteres es un tipo de datos que representa una secuencia de caracteres que puede consistir de letras, números, símbolos, palabras o frases.

Las cadenas de caracteres se utilizan para representar datos de texto y se definen mediante comillas sencillas ('), comillas dobles (") o comillas inversas (``):

let nombre1 = 'Juan Perez';
let nombre2 = "Juan Perez";
let nombre3 = `Juan Perez`;

En el ejemplo anterior, hay tres cadenas asignadas a distintas variables. Para confirmar que todas son cadenas, puedes comprobar el tipo de la variable:

console.log(typeof(nombre1)); // cadena
console.log(typeof(nombre2)); // cadena
console.log(typeof(nombre3)); // cadena

Es importante saber que en JavaScript, las cadenas de caracteres son inmutables. Es decir, que una vez creada una cadena, su contenido no se puede modificar. En su lugar, cuando quieras modificar una cadena, debes crear una nueva que represente la versión modificada.

Por ejemplo, si tienes una cadena de caracteres asignada a una variable, no puedes modificarla. En su lugar, deberás crear una nueva cadena y asignar la nueva cadena a la misma variable de la siguiente manera:

let nombre = "Juan Perez";
nombre = "Juana Perez";

Esto significa que la cadena de caracteres original "Juan Perez" sigue existiendo en la memoria, pero la variable nombre se refiere ahora a la nueva cadena "Juana Perez".

Las cadenas de caracteres en JavaScript pueden transformarse y procesarse de varias formas, como convertirlas a mayúsculas o minúsculas, extraer subcadenas, buscar caracteres o secuencias específicas y comparar cadenas para determinar si son iguales.

Estas funciones hacen de las cadenas de caracteres una herramienta versátil y útil para los desarrolladores. Estas cadenas disponen de una serie de métodos y propiedades incorporados que permiten su manipulación. Veamos algunos de ellos.

Concatenación de cadenas en JavaScript

En JavaScript, la concatenación de cadenas combina dos o más cadenas en una sola con sus variables. Puedes hacerlo utilizando el operador +, como se ve en el ejemplo siguiente:

let nombre = "Juan";
let apellido = "Perez";
let nombreCompleto = nombre + " " + apellido;
console.log(nombreCompleto); // Juan Perez

En este ejemplo, se añade una cadena vacía (" ") en medio para crear un espacio entre ambas cadenas. Otra forma de concatenar cadenas en JavaScript es utilizando el método concat(), que está disponible en todos los objetos tipo cadena. Por ejemplo:

let nombre = "Juan";
let apellido = "Perez";
let nombreCompleto = nombre.concat(" ", apellido);
console.log(nombreCompleto); // Juan Perez

Concatenación de cadenas en JavaScript con plantillas literales

En JavaScript, también se pueden utilizar plantillas literales para concatenar cadenas. Una plantilla literal es un tipo especial de cadena que se define utilizando puntos comillas invertidas (``) en lugar de comillas regulares (' o ").

Las plantillas literales pueden contener expresiones evaluadas (como por ejemplo variables) y concatenadas con el texto circundante, como se ve en el ejemplo siguiente:

let nombre = "Juan";
let apellido = "Perez";
let nombreCompleto = `${nombre} ${apellido}`;
console.log(nombreCompleto); // Juan Perez

Las plantillas literales proporcionan una forma concisa y legible de concatenar cadenas e insertar expresiones en estas. También permiten cambios de renglón y otros caracteres especiales, lo que las convierte en una herramienta flexible para la manipulación de cadenas en JavaScript.

Cómo escapar las comillas y los apóstrofes en las cadenas de caracteres

En JavaScript, si necesitas incluir una camilla o un apóstrofe dentro de una cadena, debes escaparla utilizando una barra invertida (\), ya que al no hacerlo se producirá un error, como se ve a continuación:

let cita = "El dijo, "Aprendi en freeCodeCamp!"";

Esto producirá el siguiente error:

Uncaught SyntaxError: Unexpected identifier 'Aprendi'

Para solucionarlo, puedes utilizar el tipo de comillas opuesto. Por ejemplo, si tu cita tiene comillas dobles, entonces puedes encerrar tu cadena con unas comillas simples y viceversa:

let cita = 'El dijo, "Me encanta JavaScript!"';
let apostrofe = "Anda pa'lla";

Cómo Convertir una Cadena a Mayúsculas o Minúsculas en JavaScript

En JavaScript, puedes convertir una cadena a mayúsculas o minúsculas utilizando los métodos toUpperCase() y toLowerCase(), respectivamente. Estos métodos generan una nueva cadena con todos los caracteres en mayúsculas o minúsculas, como se ve en el ejemplo siguiente:

let mensaje = "¡Bienvenidos a freeCodeCamp!";
let mensajeMayusculas = miMensaje.toUpperCase();
let mensajeMinusculas = miMensaje.toLowerCase();

console.log(mensajeMayusculas); // "¡BIENVENIDOS A FREECODECAMP!"
console.log(mensajeMinusculas); // "¡bienvenidos a freecodecamp!"

Observa que estos métodos no modifican la cadena original, sino que generan una nueva cadena. La cadena original permanece intacta, ya que las cadenas son inmutables.

Para terminar

Es importante que sepas qué hay mucho más por aprender acerca del tema, y este artículo es tan solo una introducción básica a las cadenas, cómo funcionan y cómo pueden utilizarse para operaciones simples.

Puedes explorar los métodos de cadenas (enlace externo en Inglés) para aprender cómo manipularlas.