Очень часто нужно добавить элемент в массив по индексу и вернуть новый массив.
Такое простое действие каждый раз порождает неприятные конструкции в коде:
const newArray = [...array]
newArray.splice(index, 0, newElement)
или
const newArray = array.slice(0, index).concat([newElement]).concat(array.slice(index))