De JavaScript-methode Array slice () retourneert een ondiepe kopie van een deel van een array naar een nieuw array-object.
De syntaxis van de slice()
methode is:
arr.slice(start, end)
Hier is arr een array.
slice () Parameters
De slice()
methode omvat:
- start (optioneel) - Startindex van de selectie. Indien niet opgegeven, begint de selectie bij start 0 .
- end (optioneel) - Eindindex van de selectie (exclusief). Indien niet opgegeven, eindigt de selectie bij de index van het laatste element.
Retourwaarde van slice ()
- Retourneert een nieuwe array met de geëxtraheerde elementen.
Voorbeeld 1: JavaScript-methode slice ()
let languages = ("JavaScript", "Python", "C", "C++", "Java"); // slicing the array (from start to end) let new_arr = languages.slice(); console.log(new_arr); // ( 'JavaScript', 'Python', 'C', 'C++', 'Java' ) // slicing from the third element let new_arr1 = languages.slice(2); console.log(new_arr1); // ( 'C', 'C++', 'Java' ) // slicing from the second element to fourth element let new_arr2 = languages.slice(1, 4); console.log(new_arr2); // ( 'Python', 'C', 'C++' )
Uitvoer
('JavaScript', 'Python', 'C', 'C ++', 'Java') ('C', 'C ++', 'Java') ('Python', 'C', 'C ++')
Voorbeeld 2: JavaScript-slice () met negatieve index
In JavaScript, dan kunt u ook gebruik maken van negatieve start en einde indices. De index van het laatste element is -1 , de index van het voorlaatste element is -2 , enzovoort.
const languages = ("JavaScript", "Python", "C", "C++", "Java"); // slicing the array from start to second-to-last let new_arr = languages.slice(0, -1); console.log(new_arr); // ( 'JavaScript', 'Python', 'C', 'C++' ) // slicing the array from third-to-last let new_arr1 = languages.slice(-3); console.log(new_arr1); // ( 'C', 'C++', 'Java' )
Uitvoer
('JavaScript', 'Python', 'C', 'C ++') ('C', 'C ++', 'Java')
Voorbeeld 3: JavaScript slice () met objecten als array-elementen
De slice()
methode shallow kopieert de elementen van de array op de volgende manier:
- Het kopieert objectreferenties naar de nieuwe array. ( Bijvoorbeeld een geneste array) Dus als het object waarnaar wordt verwezen, wordt gewijzigd, zijn de wijzigingen zichtbaar in de geretourneerde nieuwe array.
- Het kopieert de waarde van strings en getallen naar de nieuwe array.
let human = ( name: "David", age: 23, ); let arr = (human, "Nepal", "Manager"); let new_arr = arr.slice(); // original object console.log(arr(0)); // ( name: 'David', age: 23 ) // making changes to the object in new array new_arr(0).name = "Levy"; // changes are reflected console.log(arr(0)); // ( name: 'Levy', age: 23 )
Uitvoer
(naam: 'David', leeftijd: 23) (naam: 'Levy', leeftijd: 23)
Aanbevolen literatuur: JavaScript Array.splice ()