Las plantillas de cadena, mejor conocidas como **template strings,**son una forma más fácil de crear:
- Cadenas con variables dentro (interpolación).
- Generar cadenas multilínea.
- Ejecutar expresiones, funciones y etiquetados.
1let saludo = `Hola soy un Template String`; 2console.log(saludo); //Imprime Hola soy un Template String 3 4//strings multilínea 5let mensaje = `No es quien seas en el interior, 6tus actos son los que te definen... 7Batman`; 8console.log(mensaje); 9/* 10Imprime 11No es quien seas en el interior, 12tus actos son los que te definen... 13Batman 14*/ 15 16//variables en strings (interpolación) 17let nombre = 'Jonathan'; 18console.log(`Hola ${nombre}`); //Imprime Hola Jonathan 19 20//ejecutar expresiones 21console.log(`Hola ${nombre}, tienes ${30 + 2} años`); //Imprime Hola Jonathan, tienes 32 años 22 23//ejecutar funciones 24let estaciones = ['Primavera', 'Verano', 'Otoño', 'Invierno'], 25 ol = `<ol> 26 ${ 27 estaciones.map(function (estacion) { 28 return `<li>${estacion}</li>`; 29 }).join('') 30 } 31 </ol>`; 32 33console.log(ol); //Imprime <ol><li>Primavera</li><li>Verano</li><li>Otoño</li><li>Invierno</li></ol> 34 35//función de etiquetado 36const etiqueta = function (cadena, variable) { 37 console.log(cadena); //Imprime ["Hola ", "", raw: Array[2]] 38 console.log(variable); //Imprime Ulises 39 console.log(cadena[0] + variable); //Imprime Hola Ulises 40}; 41 42let otroNombre = 'Ulises'; 43 44etiqueta`Hola ${otroNombre}`;
Recuerda que en EDteam tenemos varios cursos que te introducen y especializan en este maravilloso lenguaje:
- JavaScript desde cero
- Node.js desde cero
- JavaScript Avanzado: Paradigmas de Programación
- HTML5 Avanzado: Progressive Web Apps
- React desde cero
- Angular desde cero
- Vue.js desde cero
En el siguiente capítulo te hablaré de las funciones flecha mejor conocidas como arrow functions.
Artículos anteriores de la serie 'El estándar actual de JavaScript':
Se despide su amigo y docente digital Jonathan MirCha, sean felices, hasta siempre, nos leemos la próxima semana. Bye ?