Sobes.tech
Junior

JavaScriptте foreach жана map ыкмаларынын айырмасы эмнеде?

sobes.tech AI

AIден жооп

forEach массив элементтерин өтүп, ар бир элемент үчүн кайтаруу функциясын ишке ашырат, бирок жаңы массив түзбөйт. Ал жанама таасирлер үчүн колдонулат, мисалы, консольго чыгарып же тышкы өзгөрмөлөрдү өзгөртүү үчүн.

map да массив элементтерин өтүп, ар бир элемент үчүн кайтаруу функциясын ишке ашырат. Бирок, ал бул функциянын ар бир элементте аткарылышынын натыйжаларын камтыган жаңы массивди кайтарат. Ал бир массивди башкасына айландыруу үчүн колдонулат.

forEach менен мисал:

const numbers = [1, 2, 3];
numbers.forEach(number => console.log(number * 2));
// Чыгуу:
// 2
// 4
// 6
// массив numbers өзгөрбөйт [1, 2, 3]

map менен мисал:

const numbers = [1, 2, 3];
const doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers);
// Чыгуу: [2, 4, 6]
// массив numbers өзгөрбөйт [1, 2, 3]

Негизги айырма, map — бул "функционалдуу" ыкма, ал баштапкы массивди өзгөртпөйт жана жаңы массив кайтарат, ал эми forEach негизинен ар бир элементте аракеттерди аткаруу үчүн арналган жана жаңы массив кайтарбайт.

Критерий forEach map
Кайтарылган мааниси undefined Жаңы массив
Массивди өзгөртүү Жаңы массив түзбөйт Жаңы массив түзөт
Негизги максаты Ар бир элементте аракеттерди аткаруу Массивди башкасына айландыруу
Методдорду чынжырлоо Табигый түрдө колдоого алынбайт Колдоого алынат (массив кайтарат)