متد map() و forEach()
تفاوت بین متدهای
map() و forEach()
در جاوا اسکریپت چیست و در چه مواقعی میتوان از هر یک استفاده کرد؟
١ پاسخ
تفاوت اصلی بین map() و forEach() در هدف استفاده و نتیجهای است که برمیگردانند:
---
1. forEach()
برای انجام عملیات روی هر عنصر آرایه استفاده میشود.
هیچ مقدار جدیدی برنمیگرداند (یعنی return ندارد).
اغلب برای side-effect ها (مثل console.log یا بهروزرسانی متغیرها) استفاده میشود.
مثال:
const numbers = [1, 2, 3];
numbers.forEach(num => console.log(num * 2));
// خروجی در کنسول: 2، 4، 6
---
2. map()
برای تبدیل هر عنصر و ایجاد آرایهای جدید استفاده میشود.
همیشه آرایهای جدید با نتایج برمیگرداند.
مثال:
const numbers = [1, 2, 3];
const doubled = numbers.map(num => num * 2);
console.log(doubled); // خروجی: [2, 4, 6]
---
کی از کدام استفاده کنیم؟
اگر قصد ساختن خروجی جدید داری، از map() استفاده کن. اگر فقط میخوای روی دادهها کاری انجام بدی (مثل چاپ یا تغییر خارجی)، forEach() مناسبه.