JavaScriptda Array metodlari 2-dars
Josh*Assalamu Alaykum.
Bugungi maqolada JavaScripda Array metodlari nomli darsimizni davom etamiz.
Bismillah.
Demak o'tgan darsimizda biz:
- push(...items)
- pop()
- shift()
- unshift(...items)
- slice(start, end)
metodlarni o'rgangan edik.
Bugun esa quyidagi 5 ta metodlar bilan tanishamiz:
- splice()
- concat()
- forEach()
- indexOf()/lastIndexOf()
- includes()
Demak, splice() metodidan boshlaymiz.
Bu metod vazifalari:
- Arraydan biz xohlagancha miqdorda element(lar)ni o'chirib tashlaydi.
- O'chirilgan element(lar)ni o'rniga yangi elementlarni qo'shadi.
Argumentlari:
- start - bu qaysi indeksdan boshlab elementlarni o'chirishni belgilaydi. Misol uchun,birinchi argumentga 2 sonini bersak , metod arrayning ikkinchi indeksidan boshlab elementlarni o'chirishni boshlaydi.
- deleteCount - berilgan startdan ya'ni indeksdan boshlab nechta element o'chirish kerakligini aniqlaydi. Misol uchun, splice(2,2) deb yozsak, ikkinchi indeksdan boshlab 2 ta elementni o'chirish kerak degani.
- ...elementsToReplace - bu argument ixtiyoriy, agar biz o'chirgan elementlar o'rniga yangi elementlarni joylashtirmoqchi bo'lsak ishlatamiz.
Endi misollarga o'tamiz:
let arr = [1,2,3,4,5,6];
arr.splice(2,2) // arr = [1,2,5,6];
Bu yerda arraydan [3,4] ni o'chirib tashladik.
let arr = [1,2,3,4,5,6];
arr.splice(2,1, "uch") // arr = [1, 2, "uch", 4, 5, 6]
bu yerda esa ikkinchi indeksda turgan 3 sonini o'chirib o'rniga "uch" ni yozdik.
Harxil holatlar bilan o'zingiz sinab ko'rishingiz mumkin.
Biz esa keyingi metodga o'tamiz. 😉
Biror bir arrayga boshqa arrayni qo'shib yangi array yaratmoqchi bo'lsangiz concat() metodini ishlatsangiz bo'ladi. Misol uchun:
let arr = [1,2,3];
let arr2 = [4,5,6];
let newArr = arr.concat(arr2); // newArr = [1,2,3,4,5,6]
Looplar haqida ma'lumotingiz bo'lsa, arraylarni sikl bo'ylab yurishimiz uchun tahminan quyidagicha koddan foydalanar edik:
for(let i = 0; i <= arr.length; i++){
console.log(arr[i])
}
yoki, for ..of , for..in lar ham misol bo'ladi.
Ammo, Arraylar ustida osonroq ishlashimiz uchun forEach() metodi ham borligini bilarmidingiz.
let arr = [1,2,3];
arr.forEach((item, index, array) => {
console.log("item: " + item); // item: 1, item: 2 , item: 3
console.log("index: " + index); // index: 0, index: 1, index: 2
console.log("array: " + array); // array: [1,2,3], ...
})
mana shu usulda ishlashimiz mumkin.
Agar array ichidagi biror bir qiymatni indeksini bilishimiz kerak bo'lib qolsa , indexOf() metodidan foydalanamiz. Misol:
let arr = [5, 8, 3, 6, 3];
arr.indexOf(3); // 2
ko'rib turganimizdek 3 qiymatining indeksi 2 .
arr.lastIndexOf(3) // 4
lastIndexOf() esa ushbu berilgan qiymatning oxirgi joylashgan indeksini qaytaradi.
Agar biror bir qiymat ushbu arrayda bor yoki yo'qligini bilmoqchi bo'lsak includes() metodidan foydalanamiz. Misol:
let arr = [5, 8, 3, 6, 3];
arr.includes(5) // true
arr.includes(12) // false
Mana, Bugungi maqolam shulardan iborat edi. Manfaatli bo'lgan bo'lsa hursandman. Fikr, taklif va mulohazalaringizni kommentda kutaman.
Rahmat!