Sobes.tech
Junior

JavaScriptda foreach va map metodlari orasidagi farq nima?

sobes.tech AI

AIdan javob

forEach massiv elementlarini aylanib chiqadi va har bir element uchun qayta chaqirish funksiyasini bajaradi, ammo yangi massiv yaratmaydi. Bu konsolga chiqarish yoki tashqi o'zgaruvchilarni o'zgartirish kabi yon ta'sirlar uchun ishlatiladi.

map ham massiv elementlarini aylanib chiqadi va har bir element uchun qayta chaqirish funksiyasini bajaradi. Biroq, u har bir elementda ushbu funksiyaning bajarilish natijalarini o'z ichiga olgan yangi massivni qaytaradi. Bu bir massivni boshqasiga aylantirish uchun ishlatiladi.

forEach bilan misol:

const numbers = [1, 2, 3];
numbers.forEach(number => console.log(number * 2));
// Chiqish:
// 2
// 4
// 6
// numbers [1, 2, 3] qoladi

map bilan misol:

const numbers = [1, 2, 3];
const doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers);
// Chiqish: [2, 4, 6]
// numbers [1, 2, 3] qoladi

Asosiy farq shundaki, map "funktsional" usul bo'lib, asl massivni o'zgartirmaydi va yangi massivni qaytaradi, forEach esa asosan har bir elementda amal bajarish uchun mo'ljallangan va yangi massivni qaytarmaydi.

Mezon forEach map
Qaytadigan qiymat undefined Yangi massiv
Massivni o'zgartirish Yangi massiv yaratmaydi Yangi massiv yaratadi
Asosiy maqsad Har bir elementda amal bajarish Bir massivni boshqasiga aylantirish
Metodlarni zanjirlash Tabiiy ravishda qo'llab-quvvatlanmaydi Qo'llab-quvvatlanadi (massiv qaytaradi)