--- id: 587d7b8a367417b2b2512b4e title: Create Strings using Template Literals localeTitle: Crear cadenas usando literales de plantilla challengeType: 1 --- ## Description
Una nueva característica de ES6 es la plantilla literal . Este es un tipo especial de cadena que facilita la creación de cadenas complejas. Los literales de plantilla le permiten crear cadenas de varias líneas y usar las funciones de interpolación de cadenas para crear cadenas. Considera el siguiente código:
const person = {
  name: "Zodiac Hasbro",
  age: 56
};

// Template literal with multi-line and string interpolation
const greeting = `Hello, my name is ${person.name}!
I am ${person.age} years old.`;

console.log(greeting); // prints
// Hello, my name is Zodiac Hasbro!
// I am 56 years old.
Muchas cosas pasaron allí. En primer lugar, el ejemplo utiliza comillas ( ` ), no comillas ( ' o " ), para envolver la cadena. En segundo lugar, observe que la cadena es multilínea, tanto en el código como en la salida. Esto ahorra la inserción de \n en La sintaxis ${variable} utilizada anteriormente es un marcador de posición. Básicamente, no tendrá que usar más la concatenación con el operador + . Para agregar variables a las cadenas, simplemente suelte la variable en una cadena de plantilla y la envuelva con ${ y } . De forma similar, puede incluir otras expresiones en su cadena literal, por ejemplo, ${a + b} . Esta nueva forma de crear cadenas le brinda más flexibilidad para crear cadenas sólidas.
## Instructions
Use la sintaxis literal de la plantilla con comillas invertidas para mostrar cada entrada de la matriz de failure del objeto de result . Cada entrada debe incluirse dentro de un elemento li con el atributo de clase text-warning , y debe aparecer dentro de resultDisplayArray .
## Tests
```yml tests: - text: resultDisplayArray es una matriz que contiene mensajes de result failure . testString: 'assert(typeof makeList(result.failure) === "object" && resultDisplayArray.length === 3, "resultDisplayArray is a list containing result failure messages.");' - text: resultDisplayArray es el resultado deseado. testString: 'assert(makeList(result.failure).every((v, i) => v === `
  • ${result.failure[i]}
  • ` || v === `
  • ${result.failure[i]}
  • `), "resultDisplayArray is the desired output.");' - text: Se utilizaron cadenas de plantilla. testString: 'getUserInput => assert(getUserInput("index").match(/`.*`/g), "Template strings were not used");' ```
    ## Challenge Seed
    ```js const result = { success: ["max-length", "no-amd", "prefer-arrow-functions"], failure: ["no-var", "var-on-top", "linebreak"], skipped: ["id-blacklist", "no-dup-keys"] }; function makeList(arr) { "use strict"; // change code below this line const resultDisplayArray = null; // change code above this line return resultDisplayArray; } /** * makeList(result.failure) should return: * [ `
  • no-var
  • `, * `
  • var-on-top
  • `, * `
  • linebreak
  • ` ] **/ const resultDisplayArray = makeList(result.failure); ```
    ## Solution
    ```js // solution required ```