1. 배열 복사

const fruits = ['peach', 'pear', 'apple', 'plum'];
const newFruits = [...fruits];

newFruits.splice(2, 1);
// [ 'apple' ]
newFruits;
// [ 'peach', 'pear', 'plum' ]
fruits;
// [ 'peach', 'pear', 'apple', 'plum' ]

2.1 삭제 요소 앞 뒤를 이어 붙여 새로운 배열을 만든다

const fruits = ['peach', 'pear', 'apple', 'plum'];
fruits.slice(0, 2).concat(fruits.slice(3));
// [ 'peach', 'pear', 'plum' ]

2.2 spread문법을 이용해 합친다

const fruits = ['peach', 'pear', 'apple', 'plum'];
[...fruits.slice(0, 2), ...fruits.slice(3)];
// [ 'peach', 'pear', 'plum' ]

3. 필터를 이용한다

const fruits = ['peach', 'pear', 'apple', 'plum'];
fruits.filter(fruit => fruit !== 'apple');
// [ 'peach', 'pear', 'plum' ]

보너스. 필터와 index를 이용한 삭제

const fruits = ['peach', 'pear', 'apple', 'plum'];
fruits.filter ((_, i) => i !== 2);