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

javascriptsafu.splice(kutoka wapi tunafuta, tunafuta ngapi, [ingiza], [ingiza]...);

Mfano

Wacha tufute vipengele vitatu, kuanzia na cha kwanza:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);

console.log(arr);

Matokeo ya utekelezaji wa kodi:

javascript['a', 'e']

Mfano

Wacha tuonyeshe safu ya vipengele vilivyofutwa:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);

console.log(del);

Matokeo ya utekelezaji wa kodi:

javascript['b', 'c', 'd']

Mfano

Wacha kwanza tufute kipengele chenye nambari 2, kisha badala yake tuingize vipengele vipya vitatu:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');

console.log(arr);

Matokeo ya utekelezaji wa kodi:

javascript['a', 'b', '1', '2', '3', 'd', 'e']

Mfano

Sasa tusifute chochote, lakini katika nafasi 2, tuingize vipengele vipya vitatu:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');

console.log(arr);

Matokeo ya utekelezaji wa kodi:

javascript['a', 'b', '1', '2', '3', 'c', 'd', 'e']

Mfano . Thamani hasi

Wacha tufute kipengele cha mwisho wa pili:

javascriptlet arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);

console.log(arr);

Matokeo ya utekelezaji wa kodi:

javascript['a', 'b', 'c', 'e']

Angalia pia

  • Njia slice,
    ambayo pia hukata sehemu za safu
  • Njia shift,
    ambayo inafuta kipengele cha kwanza cha safu
  • Njia pop,
    ambayo inafuta kipengele cha mwisho cha safu