Metoda splice
Metoda splice maže nebo přidává
prvky v poli. Lze pouze mazat prvky,
pouze přidávat nebo dělat obojí
současně. Metoda je velmi univerzální a
složitá na pochopení.
Metoda mění samotné pole a vrací přitom
pole smazaných prvků.
Prvním parametrem metoda přijímá číslo prvku
pole, který je třeba smazat. Druhým parametrem
- kolik prvků pole se má smazat.
Pokud se nastaví na 0 - prvky nebudou
smazány (pouze přidány nové).
Dále přes čárku následují prvky, které
je třeba přidat do pole (jsou volitelnými
parametry). Tyto prvky se přidají namísto
smazaných prvků pole.
Pokud nedošlo ke smazání (když druhý parametr
0) - prvky se vloží do pole počínaje
pozicí, která je uvedena prvním parametrem
metody. První parametr může mít zápornou
hodnotu. V tomto případě začne odpočet pozice
ne od začátku pole, ale od konce. Poslední prvek
přitom bude mít číslo -1.
Syntaxe
pole.splice(odkud mažeme, kolik mažeme, [vložit], [vložit]...);
Příklad
Odstraníme tři prvky, počínaje prvním:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);
console.log(arr);
Výsledek provedení kódu:
['a', 'e']
Příklad
Vypíšeme pole smazaných prvků:
let arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);
console.log(del);
Výsledek provedení kódu:
['b', 'c', 'd']
Příklad
Nejprve smažeme prvek s číslem
2, a pak namísto něj vložíme další
tři nové prvky:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');
console.log(arr);
Výsledek provedení kódu:
['a', 'b', '1', '2', '3', 'd', 'e']
Příklad
Nyní nic nebudeme mazat, ale
na pozici 2, vložíme další tři nové
prvky:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');
console.log(arr);
Výsledek provedení kódu:
['a', 'b', '1', '2', '3', 'c', 'd', 'e']
Příklad . Záporná hodnota
Odstraníme předposlední prvek:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);
console.log(arr);
Výsledek provedení kódu:
['a', 'b', 'c', 'e']