Javascript es un lenguaje que evoluciona rápidamente. Hace algunos años se introdujeron las backticks o template strings. Permiten concatenar y trabajar con cadenas de una mejor y sencilla manera.
¿Qué pasaba si queríamos un texto largo, legible en el código? podíamos hacer algo así:
var usuario = "pedrito",
password = "123";
var texto = "Hola. Estos son tus datos: " + "\n" +
"Usuario: " + usuario + "\n" +
"Contraseña: " + password;
console.log(texto);
En cambio, con las backticks podemos hacer esto:
var usuario = "pedrito",
password = "123";
var texto = `Hola. Estos son tus datos:
Usuario: ${usuario}
Contraseña: ${password}`;
console.log(texto);
¿Fabuloso, no?
Como vimos, con ${} podemos acceder a variables. Pero no es acceder a variables lo único que podemos hacer; de hecho podemos poner una expresión como cualquier otra.
Veamos por ejemplo cómo imprimir una tabla de multiplicar. Normalmente sería así:
var tabla = 5;
for(var i = 1; i <= 10; i++) console.log(tabla + "x" + i + " = " + tabla * i + "\n");
Con resultados:
En cambio, con las template strings haríamos algo así:
var tabla = 5;
for(var i = 1; i <= 10; i++) console.log(`${tabla}x${i} = ${tabla * i}
`);
El resultado sería el mismo:
Podemos escapar cualquier tipo de comillas. Los saltos de línea los ponemos incluyendo el salto de línea directamente en la plantilla, al igual que las tabulaciones. Aquí un ejemplo:
var mensaje = `Esto es una comilla doble => "
Esto es una comilla simple => '
Arriba hay muchos saltos
Una tabulación
¡Otra tabulación!
Saltos con tabulación`;
console.log(mensaje);
Con eso podemos poner mucho texto sin preocuparnos por escaparlo. El resultado es este:
Para terminar de explicar, veremos que también podemos llamar a funciones, pasar parámetros y todo eso. De hecho, dentro de una función también usamos las backticks.
var visitante = "Luis";
var saludo = function(nombre){
return `¡Hola, ${nombre}!`;
}
var sumar = function(a, b){
return a + b;
}
console.log(`${saludo(visitante)} Bienvenido a mi sitio. 5 + 5 es igual a ${sumar(5, 5)}`)
Al ejecutar el código, este es el resultado:
Recordemos que no todos los navegadores lo soportan, así que es mejor investigar antes de implementar. Por otro lado, podemos utilizar un compilador como Babel que convertiría las template strings en cadenas simples, concatenadas, respetando saltos de línea, llamadas a funciones y todo eso.
En este caso lo hice directamente desde el navegador, pero ya hay muchas herramientas que permiten compilarlo automáticamente.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.
Ver comentarios