Метод splice () JavaScript Array () повертає масив, змінюючи (додаючи / видаляючи) його елементи на місці.
Синтаксис splice()
методу:
arr.splice(start, deleteCount, item1,… , itemN)
Тут arr - це масив.
параметри сплайсингу ()
splice()
Метод приймає в:
- start - індекс, звідки змінюється масив.
- deleteCount (необов’язково) - Кількість елементів для видалення
start
. - item1,…, itemN (необов’язково) - Елементи, які потрібно додати до
start
індексу. Якщо не вказано,splice()
буде видалено лише елементи з масиву.
Повернене значення зі сплайсингу ()
- Повертає масив, що містить видалені елементи.
Примітка:splice()
метод змінює вихідний масив.
Приклад 1: Використання методу сплайсингу ()
let languages = ("JavaScript", "Python", "Java", "Lua"); // replacing "Java" & "Lua" with "C" & "C++" let removed = languages.splice(2, 2, "C", "C++"); console.log(removed); // ( 'Java', 'Lua' ) console.log(languages); // ( 'JavaScript', 'Python', 'C', 'C++' ) // adding elements without deleting existing elements let removed1 = languages.splice(1, 0, "Java", "Lua"); console.log(removed1); // () console.log(languages); // ( 'JavaScript', 'Java', 'Lua', 'Python', 'C', 'C++' ) // removing 3 elements let removed2 = languages.splice(2, 3); console.log(removed2); // ( 'Lua', 'Python', 'C' ) console.log(languages); // ( 'JavaScript', 'Java', 'C++' )
Вихідні дані
('Java', 'Lua') ('JavaScript', 'Python', 'C', 'C ++') () ('JavaScript', 'Java', 'Lua', 'Python', 'C', ' C ++ ') (' Lua ',' Python ',' C ') (' JavaScript ',' Java ',' C ++ ')
Приклад 2: Використання сплайсингу () для різних значень deleteCount
- Якщо start> array.length ,
splice()
нічого не видаляє і починає додавати аргументи до кінця масиву. - Якщо старт <0 , індекс відраховується назад ( array.length + start ). Наприклад, -1 - останній елемент.
- Якщо array.length + start <0 , він почнеться з індексу 0 .
let languages = ("JavaScript", "Python", "Java", "Lua"); // does not removes, only appends to the end let removed = languages.splice(5, 2, "C++"); console.log(removed); // () console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "C++") // remove last element and add 3 more elements let removed1 = languages.splice(-1, 1, "Swift", "Scala", "Go"); console.log(removed1); // ( "C++" ) console.log(languages); // ("JavaScript", "Python", "Java", "Lua", "Swift", "Scala", "Go")
Вихідні дані
() ("JavaScript", "Python", "Java", "Lua", "C ++") ('C ++') ("JavaScript", "Python", "Java", "Lua", "Swift", " Scala "," Go ")
Приклад 3: Використання сплайсингу () для різних початкових значень
- Якщо deleteCount опущено або перевищує кількість елементів, що залишилися в масиві, він видаляє всі елементи від початку до кінця масиву.
- Якщо deleteCount дорівнює 0 або від’ємне , елементи не видаляються. Але слід вказати принаймні один новий елемент.
let languages = ("JavaScript", "Python", "Java", "Lua"); // removes everything from start let removed = languages.splice(1); console.log(removed); // ( "Python", "Java", "Lua" ) console.log(languages); // ( "JavaScript" ) // remove none & add 3 more element let removed1 = languages.splice(1, -2, "Swift", "Scala", "Go"); console.log(removed1); // ( ) console.log(languages); // ( "JavaScript", "Swift", "Scala", "Go" )
Вихідні дані
("Python", "Java", "Lua") ("JavaScript") () ("JavaScript", "Swift", "Scala", "Go")
Рекомендовані читання:
- JavaScript Array.pop ()
- JavaScript Array.push ()