Метод splice
Метод splice массивидан элементларни ўчиради ёки
қўшади. Фақат элементларни ўчириш,
фақат қўшиш ёки ҳар иккаласини бир вақтда
бажариш мумкин. Метод жуда универсал ва
тушиниши қийин бўлади.
Метод массивини ўзини ўзгартиради ва
бунинг учун ўчирилган элементлар массивини
қайтаради.
Биринчи параметр сифатида метод ўчириладиган элементнинг
номернии қабул қилади. Иккинчи параметр
сифатида - қанча элементни ўчириш кераклиги.
Агар уни 0 қўйилса - элементлар ўчирилмайди
(фақат янгилар қўшилади).
Кейин vergul bilan ajratilgan holda qaysi elementlar
массивга қўшиш кераклиги (мажбурий бўлмаган
параметрлар). Бу элементлар ўчирилган элементлар
ўрнига қўшилади.
Агар ўчириш бўлмаса (иккинчи параметр
0 бўлганда) - элементлар массивга методнинг
биринчи параметрида кўрсатилган позициядан бошлаб
қўшилади.
Биринчи параметр манфий қийматга эга бўлиши мумкин.
Бу ҳолда позициянинг ҳисоби
массивнинг бошланғичидан эмас, балки охиридан бошланади. Охирги элемент
бу ҳолда -1 номерга эга бўлади.
Синтаксис
массив.splice(қаердан ўчирамиз, қанча ўчирамиз, [қўшиш], [қўшиш]...);
Мисол
Келтинглар, биринчи элементдан бошлаб, учта элементни ўчирамиз:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(1, 3);
console.log(arr);
Кодни ишга тушириш натижаси:
['a', 'e']
Мисол
Келтинглар, ўчирилган элементлар массивини чиқарамиз:
let arr = ['a', 'b', 'c', 'd', 'e'];
let del = arr.splice(1, 3);
console.log(del);
Кодни ишга тушириш натижаси:
['b', 'c', 'd']
Мисол
Келтинглар, аввал 2 номерли элементни ўчирамиз,
сўнгра унинг ўрнига яна учта янги элементни қўшамиз:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 1, '1', '2', '3');
console.log(arr);
Кодни ишга тушириш натижаси:
['a', 'b', '1', '2', '3', 'd', 'e']
Мисол
Келтинглар, энди ҳеч нарсани ўчирмаймиз, лекин
2 позициясига, яна учта янги
элементни қўшамиз:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(2, 0, '1', '2', '3');
console.log(arr);
Кодни ишга тушириш натижаси:
['a', 'b', '1', '2', '3', 'c', 'd', 'e']
Мисол . Манфий қиймат
Келтинглар, охиргидан олдинги элементни ўчирамиз:
let arr = ['a', 'b', 'c', 'd', 'e'];
arr.splice(-2, 1);
console.log(arr);
Кодни ишга тушириш натижаси:
['a', 'b', 'c', 'e']