slice()
позволяет нам выбирать, какие элементы массива копировать, среди нескольких других полезных задач, новый оператор с расширением ES6 позволяет нам легко скопировать все элементы массива в порядке, с простым и хорошо читаемым синтаксисом. Синтаксис распространения просто выглядит так: ...
На практике мы можем использовать оператор спредов для копирования массива следующим образом: let thisArray = [true, true, undefined, false, null];
let thatArray = [... thisArray];
// thisArray равно [true, true, undefined, false, null]
// thisArray остается неизменным и идентичен этому массиву
copyMachine
которая принимает arr
(массив) и num
(число) в качестве аргументов. Функция должна возвращать новый массив, состоящий из num
копий arr
. Мы выполнили большую часть работы для вас, но пока это не работает. Измените функцию, используя синтаксис распространения, чтобы он работал правильно (подсказка: здесь может быть полезен другой метод, который мы уже рассмотрели!).
copyMachine([true, false, true], 2)
should return [[true, false, true], [true, false, true]]
testString: assert.deepEqual(copyMachine([true, false, true], 2), [[true, false, true], [true, false, true]]);
- text: copyMachine([1, 2, 3], 5)
should return [[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]]
testString: assert.deepEqual(copyMachine([1, 2, 3], 5), [[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]]);
- text: copyMachine([true, true, null], 1)
should return [[true, true, null]]
testString: assert.deepEqual(copyMachine([true, true, null], 1), [[true, true, null]]);
- text: copyMachine(["it works"], 3)
should return [["it works"], ["it works"], ["it works"]]
testString: assert.deepEqual(copyMachine(['it works'], 3), [['it works'], ['it works'], ['it works']]);
- text: The copyMachine
function should utilize the spread operator
with array arr
testString: assert(removeJSComments(code).match(/\.\.\.arr/));
```