--- id: 587d7b8a367417b2b2512b4e title: Create Strings using Template Literals challengeType: 1 videoUrl: '' localeTitle: Criar strings usando modelos literais --- ## Description
Um novo recurso do ES6 é o literal do modelo . Este é um tipo especial de string que facilita a criação de strings complexas. Literais de modelo permitem criar strings de várias linhas e usar recursos de interpolação de strings para criar strings. Considere o código abaixo:
const pessoa = {
nome: "Zodíaco Hasbro",
idade: 56 anos
};

// Template literal com multi-linha e interpolação de string
const greeting = `Olá, meu nome é $ {person.name}!
Tenho $ {person.age} anos de idade.

console.log (saudação); // prints
// Olá, meu nome é Zodíaco Hasbro!
// Eu tenho 56 anos.
Muitas coisas aconteceram lá. Em primeiro lugar, o exemplo usa backticks ( ` ), não aspas ( ' ou " ), para envolver a string. Em segundo lugar, observe que a string é multilinha, tanto no código quanto na saída. Isso salva a inserção \n dentro de strings. A sintaxe ${variable} usada acima é um marcador de posição. Basicamente, você não precisará mais usar a concatenação com o operador + Para adicionar variáveis ​​a strings, basta soltar a variável em uma string de template e envolvê-la com ${ e } . da mesma forma, você pode incluir outras expressões em sua string literal, por exemplo ${a + b} . Esta nova forma de criar strings lhe dá mais flexibilidade para criar cordas robustas.
## Instructions
Use a sintaxe literal de modelo com backticks para exibir cada entrada da matriz de failure do objeto de result . Cada entrada deve ser agrupada dentro de um elemento li com o text-warning atributo de classe e listada no resultDisplayArray .
## Tests
```yml tests: - text: resultDisplayArray é uma matriz contendo mensagens de result failure . testString: 'assert(typeof makeList(result.failure) === "object" && resultDisplayArray.length === 3, "resultDisplayArray is a list containing result failure messages.");' - text: resultDisplayArray é a saída desejada. testString: 'assert(makeList(result.failure).every((v, i) => v === `
  • ${result.failure[i]}
  • ` || v === `
  • ${result.failure[i]}
  • `), "resultDisplayArray is the desired output.");' - text: Sequências de modelos foram usadas 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 ```