Данный метод не изменяет исходный массив, а просто возвращает его часть.
Пример: Элементы из середины
var arr = [ 1, 2, 3, 4, 5 ]
arr.slice(2) // => [3, 4, 5]
arr.slice(1, 4) // => [2, 3, 4]
arr.slice(2, 3) // => [3]
Пример: Отсчет с конца
arr = [1, 2, 3, 4, 5]
arr.slice(-2) // => [4, 5]
arr.slice(arr.length - 2) // то же самое
arr.slice(-3, -1) // [3, 4]
arr.slice(arr.length-3, arr.length-1) // то же самое
А как будет с многомерными массивами?
Для многомерных массивов нужно использовать схожую функцию - splice()
Можете привести пример, как использовать splice() для многомерных массивов?
Многомерность не учитывается.
start тоже не обязательный параметр. slice без параметров копирует массив
Почему нет ни слова о том, что этот метод практически так же работает и для строк?! Что он вообще там есть
Наверное потому, что у строк — другой метод с таким же названием. А этот метод для массивов.
"Данный метод не изменяет исходный массив" - изменяет!
попробуйте:
var arr = [1,2,3];
arr.splice(1,1)
console.log(arr);
Извините, перепутал методы. Всего одна буква а какая разница в поведении.
это што за говностатья? где описание, что именно делает эта функция?
slice хороший способ клонировать массив,
Например
arr.spice()
следующий код
выведет
но вот так:
уже
Не надо путать копирование по ссылке и копирование по значению
Roksa pl konin
The arrayObj.slice(start[, end]) method returns a portion of an array without Krunker io modifying it. The start argument specifies which element to start with, and end specifies which element to end with. If end is not specified, extraction continues to the end of the array.
The arrayObj.slice(start[, end]) method returns a portion of an array without Krunker io modifying it. The start argument specifies which element to start with, and end specifies which element to end with. If end is not specified, extraction continues to the end of the array.
Отправить комментарий
Приветствуются комментарии:Для остальных вопросов и обсуждений есть форум.