.slice() и .splice() - это два метода массивов в JavaScript, которые имеют похожий функционал, но выполняют разные операции.

Метод .slice() создает новый массив, содержащий копию части исходного массива, заданной начальным и конечным индексами. Он не изменяет исходный массив. Формат метода: array.slice(start, end). Параметр start определяет индекс, с которого начинается копирование, а параметр end - индекс, на котором копирование заканчивается (не включая элемент с этим индексом). Если end не указан, то будут скопированы все элементы массива, начиная с индекса start.

Пример использования метода .slice():

const arr = [1, 2, 3, 4, 5];
const slicedArr = arr.slice(1, 4);
console.log(slicedArr); // [2, 3, 4]
console.log(arr); // [1, 2, 3, 4, 5]

Метод .splice() изменяет исходный массив, удаляя, заменяя или добавляя элементы в указанных индексах. Он возвращает массив удаленных элементов. Формат метода: array.splice(start, deleteCount, item1, item2, ...). Параметр start определяет индекс, с которого начинается изменение массива, а параметр deleteCount - количество элементов, которые нужно удалить из массива. Если deleteCount не указан, будут удалены все элементы массива, начиная с индекса start. Параметры item1item2 и т. д. являются элементами, которые нужно добавить в массив, начиная с индекса start.

Пример использования метода .splice():

const arr = [1, 2, 3, 4, 5];
const deletedArr = arr.splice(2, 2, 6, 7);
console.log(arr); // [1, 2, 6, 7, 5]
console.log(deletedArr); // [3, 4]

Таким образом, основная разница между методами .slice() и .splice() состоит в том, что метод .slice() создает новый массив, не изменяя исходный массив, а метод .splice() изменяет исходный массив, возвращая массив удаленных элементов. В зависимости от того, что нужно сделать с массивом, следует выбрать подходящий метод.


Назад