Njia ya splice
Njia splice inafuta au inaongeza
vipengele katika safu. Inaweza kufuta vipengele pekee,
kuongeza pekee, au kufanya vyote viwili
kwa wakati mmoja. Njia hii ni yenye umiliki mkubwa na
ngumu kuelewa.
Njia hiyo hubadilisha safu yenyewe na hurudi
safu ya vipengele vilivyofutwa.
Kigezo cha kwanza kinachukua nambari ya kipengele
cha safu kinachohitaji kufutwa. Kigezo cha pili
- ni vipengele vingapi vya safu vinapaswa kufutwa.
Ukiweka kwa 0 - basi vipengele havitafutwa
(itatumika kuongeza vipengele vipya pekee).
Kisha, kutenganisha kwa koma, kuna vipengele ambavyo
vinahitaji kuongezwa kwenye safu (hivi ni viambatanishi
visivyolazimika). Vipengele hivi vitaongezwa badala ya
vipengele vilivyofutwa kwenye safu.
Kama hakukufanyika kufutwa (wakati kigezo cha pili
0) - vipengele vitaningizwa kwenye safu kuanzia
na nafasi ile, ambayo imebainishwa na kigezo cha kwanza
cha njia. Kigezo cha kwanza kinaweza kuwa na thamani hasi.
Katika kesi hii, hesabu ya nafasi itaanza
si mwanzo wa safu, lakini mwisho. Kipengele cha mwisho
katika kesi hii kitakuwa na nambari -1.
Mtindo
safu.splice(kutoka wapi tunafuta, tunafuta ngapi, [ingiza], [ingiza]...);
Mfano
Wacha tufute vipengele vitatu, kuanzia na cha kwanza:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);
console.log(arr);
Matokeo ya utekelezaji wa kodi:
['a', 'e']
Mfano
Wacha tuonyeshe safu ya vipengele vilivyofutwa:
let arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);
console.log(del);
Matokeo ya utekelezaji wa kodi:
['b', 'c', 'd']
Mfano
Wacha kwanza tufute kipengele chenye nambari
2, kisha badala yake tuingize
vipengele vipya vitatu:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');
console.log(arr);
Matokeo ya utekelezaji wa kodi:
['a', 'b', '1', '2', '3', 'd', 'e']
Mfano
Sasa tusifute chochote, lakini
katika nafasi 2, tuingize vipengele vipya vitatu:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');
console.log(arr);
Matokeo ya utekelezaji wa kodi:
['a', 'b', '1', '2', '3', 'c', 'd', 'e']
Mfano . Thamani hasi
Wacha tufute kipengele cha mwisho wa pili:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);
console.log(arr);
Matokeo ya utekelezaji wa kodi:
['a', 'b', 'c', 'e']