¿Qué significa ${} (signo de dólar y llaves) en una cadena en JavaScript?

Resuelto Darren Joy asked hace 8 años • 5 respuestas

No he visto nada aquí ni en MDN. Estoy seguro de que me estoy perdiendo algo. Tiene que haber alguna documentación sobre esto en alguna parte.

Funcionalmente, parece que le permite anidar una variable dentro de una cadena sin realizar una concatenación utilizando el +operador. Estoy buscando documentación sobre esta característica.

Ejemplo:

var string = 'this is a string';

console.log(`Insert a string here: ${string}`);
Expandir fragmento

Darren Joy avatar Mar 07 '16 09:03 Darren Joy
Aceptado

Estás hablando de literales de plantilla , que utilizan comillas invertidas (`), a diferencia de las comillas convencionales.

Permiten tanto cadenas multilínea como interpolación de cadenas.

Cadenas multilínea:

console.log(`foo
bar`);
// foo
// bar
Expandir fragmento

Interpolación de cadenas:

var foo = 'bar';
console.log(`Let's meet at the ${foo}`);
// Let's meet at the bar
Expandir fragmento

Rick Runyon avatar Mar 07 '2016 02:03 Rick Runyon

Puede tener expresiones dentro de las cadenas/literales de la plantilla. Ejemplo:

const one = 1;
const two = 2;
const result = `One add two is ${one + two}`;
console.log(result); // output: One add two is 3
Expandir fragmento

Joel H avatar Jun 21 '2019 16:06 Joel H

También puede realizar conversiones de tipos implícitas con literales de plantilla. Ejemplo:

let fruits = ["mango","orange","pineapple","papaya"];

console.log(`My favourite fruits are ${fruits}`);
// My favourite fruits are mango,orange,pineapple,papaya
Shalom Effiom avatar Jun 28 '2020 03:06 Shalom Effiom

Se utiliza para hacer referencia a una variable dentro de una cadena:

let someVar = "World!"
console.log(`Hello ${someVar}`); // Output is Hello World!
Khachik avatar Mar 06 '2022 18:03 Khachik