A JavaScript tömb szelet () metódus egy tömb egy részének sekély másolatát adja vissza egy új tömbobjektumba.
A slice()
módszer szintaxisa :
arr.slice(start, end)
Itt az arr egy tömb.
szelet () Paraméterek
A slice()
módszer:
- start (opcionális) - A kiválasztás kezdő indexe. Ha nincs megadva, akkor a kiválasztás a 0-tól kezdődik .
- end (opcionális) - A kijelölés befejező indexe (exkluzív). Ha nincs megadva, a kiválasztás az utolsó elem indexénél végződik.
Visszaérték a szeletből ()
- Visszaad egy új tömböt, amely tartalmazza a kibontott elemeket.
1. példa: JavaScript szelet () módszer
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++' )
Kimenet
("JavaScript", "Python", "C", "C ++", "Java") ("C", "C ++", "Java") ("Python", "C", "C ++")
2. példa: JavaScript szelet () Negatív indexszel
A JavaScriptben negatív kezdő és befejező indexeket is használhat . Az utolsó elem mutatója -1 , a második utolsó elem indexe -2 stb.
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' )
Kimenet
('JavaScript', 'Python', 'C', 'C ++') ('C', 'C ++', 'Java')
3. példa: JavaScript szelet () objektumokkal tömb elemként
A slice()
módszer sekély módon másolja a tömb elemeit az alábbiak szerint:
- Objektum hivatkozásokat másol az új tömbre. ( Például beágyazott tömb) Tehát, ha a hivatkozott objektum módosul, a változások a visszaküldött új tömbben láthatók.
- A karakterláncok és számok értékét átmásolja az új tömbbe.
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 )
Kimenet
(név: „David”, életkor: 23) (név: „Levy”, életkor: 23)
Ajánlott olvasmány: JavaScript Array.splice ()