Как удалить первый элемент массива, используя синтаксис распространения
Итак, у меня есть массив, напр. const arr = [1, 2, 3, 4];
, Я хотел бы использовать синтаксис распространения ...
удалить первый элемент.
то есть. [1, 2, 3, 4]
==> [2, 3, 4]
Можно ли это сделать с помощью синтаксиса распространения?
Изменить: Упрощенный вопрос для более общего случая использования.
4 ответа
Решение
Что вы можете.
const xs = [1,2,3,4];
const tail = ([x, ...xs]) => xs;
console.log(tail(xs));
Это то, что вы ищете?
Изначально вы хотели удалить второй элемент, который достаточно прост:
const xs = [1,0,2,3,4];
const remove2nd = ([x, y, ...xs]) => [x, ...xs];
console.log(remove2nd(xs));
Надеюсь, это поможет.
var a = [1, 2, 3, 4];
[, ...a] = a
console.log( a )
Это то, что вы ищете?
const input = [1, 0, 2, 3, 4];
const output = [input[0], ...input.slice(2)];
После того, как вопрос был обновлен:
const input = [1, 2, 3, 4];
const output = [...input.slice(1)];
Но это глупо, потому что вы можете просто сделать:
const input = [1, 2, 3, 4];
const output = input.slice(1);
Вы можете использовать оператор
rest(...arrOutput)
с распространением
operator(...arr)
.
const arr = [1, 2, 3, 4];
const [itemRemoved, ...arrOutput] = [...arr];
console.log(arrOutput);