تابع `map` در جاوااسکریپت یک تابع آرایه است که بر روی هر مورد در یک آرایه عملیاتی انجام میدهد و آرایه جدیدی با مقادیر تغییر یافته را برمیگرداند. این تابع باعث میشود که بتوانید به راحتی تغییرات مورد نیاز را در هر عنصر از آرایه اعمال کنید و آرایه جدید را دریافت کنید.
تابع `map` یک تابع کالبک (callback function) را به عنوان آرگومان دریافت میکند. این تابع کالبک به صورت خودکار برای هر مورد در آرایه صدا زده میشود و مقدار تغییر یافته را برمیگرداند. در واقع، `map` یک آرایه با اندازه و ترتیب مشابه با آرایه اولیه ایجاد میکند، اما با استفاده از مقادیر جدید که از تابع کالبک دریافت میشوند.
Callback کال بک
در زیر، نحوه استفاده از تابع `map` در جاوااسکریپت را مشاهده میکنید:
const numbers = [1, 2, 3, 4, 5]; const doubledNumbers = numbers.map((num) => { return num * 2; }); console.log(doubledNumbers); // [2, 4, 6, 8, 10]
در مثال بالا، تابع `map` بر روی آرایه `numbers` فراخوانی شده است. تابع کالبک، که در اینجا یک تابع arrow است، برای هر مورد در آرایه فراخوانی میشود. در این حالت، هر عدد در آرایه `numbers` با دو ضرب شده و مقدار تغییر یافته در آرایه `doubledNumbers` قرار میگیرد. در نهایت، آرایه `doubledNumbers` حاوی اعداد ضرب شده دو برابر اعداد در آرایه اصلی میشود.
تابع `map` بسیار مفید است زیرا به شما امکان میدهد تغییراتی را در هر عنصر از یک آرایه اعمال کنید و نتیجه را به صورت آرایهای جدید دریافت کنید بدون این که بخواهید به صورت دستی یک حلقه بر روی آرایه بنویسید.