1.9 KiB
id, title, challengeType, forumTopicId, dashedName
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
587d7b7b367417b2b2512b17 | Combina arreglos con el operador de propagación | 1 | 301156 | combine-arrays-with-the-spread-operator |
--description--
Otra gran ventaja del operador de propagación es la capacidad de combinar arreglos, o de insertar todos los elementos de un arreglo en otro, en cualquier índice. Con sintaxis más tradicionales, podemos concatenar arreglos, pero esto sólo nos permite combinar arreglos al final de uno, y al principio de otro. La sintaxis de propagación hace la siguiente operación extremadamente simple:
let thisArray = ['sage', 'rosemary', 'parsley', 'thyme'];
let thatArray = ['basil', 'cilantro', ...thisArray, 'coriander'];
thatArray
tendrá el valor ['basil', 'cilantro', 'sage', 'rosemary', 'parsley', 'thyme', 'coriander']
.
Usando la sintaxis de propagación, acabamos de lograr una operación que habría sido más compleja y verbosa si hubiéramos usado métodos tradicionales.
--instructions--
Hemos definido una función spreadOut
que devuelve la variable sentence
. Modifica la función usando el operador de propagación para que devuelva el arreglo ['learning', 'to', 'code', 'is', 'fun']
.
--hints--
spreadOut
debe devolver ["learning", "to", "code", "is", "fun"]
assert.deepEqual(spreadOut(), ['learning', 'to', 'code', 'is', 'fun']);
La función spreadOut
debe utilizar la sintaxis de propagación
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;
}