Η μέθοδος JavaScript Array splice () επιστρέφει έναν πίνακα αλλάζοντας (προσθέτοντας / αφαιρώντας) τα στοιχεία του στη θέση του.
Η σύνταξη της splice()
μεθόδου είναι:
arr.splice(start, deleteCount, item1,… , itemN)
Εδώ, arr είναι ένας πίνακας.
splice () Παράμετροι
Η splice()
μέθοδος περιλαμβάνει:
- έναρξη - Το ευρετήριο από το οποίο αλλάζει ο πίνακας.
- deleteCount (προαιρετικό) - Ο αριθμός των αντικειμένων προς κατάργηση
start
. - item1,…, itemN (προαιρετικό) - Τα στοιχεία για προσθήκη στο
start
ευρετήριο. Εάν δεν προσδιοριστεί,splice()
θα αφαιρεθούν μόνο στοιχεία από τον πίνακα.
Επιστροφή τιμής από το splice ()
- Επιστρέφει έναν πίνακα που περιέχει τα διαγραμμένα στοιχεία.
Σημείωση: Η splice()
μέθοδος αλλάζει τον αρχικό πίνακα.
Παράδειγμα 1: Χρήση της μεθόδου splice ()
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
- Εάν ξεκινά> 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", " Σκάλα "," 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 ()