Metoda JavaScript Array slice () vrací mělkou kopii části pole do nového objektu pole.
Syntaxe slice()
metody je:
arr.slice(start, end)
Zde je arr pole.
parametry slice ()
slice()
Metoda bere v:
- start (volitelně) - Počáteční index výběru. Pokud není zadán, výběr začíná na začátku 0 .
- end (volitelné) - Koncový index výběru (exkluzivní). Pokud není zadán, výběr končí u indexu posledního prvku.
Vrátit hodnotu z řezu ()
- Vrátí nové pole obsahující extrahované prvky.
Příklad 1: Metoda JavaScript 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++' )
Výstup
('JavaScript', 'Python', 'C', 'C ++', 'Java') ('C', 'C ++', 'Java') ('Python', 'C', 'C ++')
Příklad 2: JavaScriptový řez () S negativním indexem
V JavaScriptu můžete také použít záporné počáteční a koncové indexy. Index posledního prvku je -1 , index druhého posledního prvku je -2 atd.
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' )
Výstup
('JavaScript', 'Python', 'C', 'C ++') ('C', 'C ++', 'Java')
Příklad 3: JavaScriptový řez () s objekty jako prvky pole
Tyto slice()
metody mělké kopíruje prvky pole v následujícím způsobem:
- Kopíruje odkazy na objekty do nového pole. ( Například vnořené pole) Takže pokud je odkazovaný objekt upraven, změny jsou viditelné ve vráceném novém poli.
- Zkopíruje hodnotu řetězců a čísel do nového pole.
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 )
Výstup
(jméno: „David“, věk: 23 let) (jméno: „Levy“, věk: 23 let)
Doporučené čtení: JavaScript Array.splice ()