1.8 KiB
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
587d7b7b367417b2b2512b17 | Combinar Arrays com o Operador Spread | 1 | 301156 | combine-arrays-with-the-spread-operator |
--description--
Outra grande vantagem do operador spread é a capacidade de combinar arrays, ou para inserir todos os elementos de um array em outro, em qualquer índice. Com sintaxe mais tradicional, podemos concatenar arrays, mas isso só nos permite combinar arrays no final de um e no início de outro. A sintaxe do spread torna a seguinte operação extremamente simples:
let thisArray = ['sage', 'rosemary', 'parsley', 'thyme'];
let thatArray = ['basil', 'cilantro', ...thisArray, 'coriander'];
thatArray
teria o valor ['basil', 'cilantro', 'sage', 'rosemary', 'parsley', 'thyme', 'coriander']
.
Usando a sintaxe de spread, acabamos de conseguir uma operação que teria sido mais complexa e mais verbosa se tivéssemos utilizado métodos tradicionais.
--instructions--
Definimos uma função spreadOut
que retorna a variável sentença
. Modifique a função usando o operador spread para que ele retorne o array ['learning', 'to', 'code', 'is', 'fun']
.
--hints--
spreadOut
deve retornar ["learning", "to", "code", "is", "fun"]
assert.deepEqual(spreadOut(), ['learning', 'to', 'code', 'is', 'fun']);
A função spreadOut
deve utilizar a sintaxe spread
assert.notStrictEqual(spreadOut.toString().search(/[...]/), -1);
--seed--
--seed-contents--
function spreadOut() {
let fragment = ['to', 'code'];
let sentence; // Change this line
return sentence;
}
console.log(spreadOut());
--solutions--
function spreadOut() {
let fragment = ['to', 'code'];
let sentence = ['learning', ...fragment, 'is', 'fun'];
return sentence;
}