آرایه ها در جاوااسکریپت - متد map - آزمون مهارت
آزمون جاوااسکریپت - آرایه و متد map
اگه دنبال یه راه ساده و کاربردی برای محک زدن دانش خودت در زمینه جاوااسکریپت و کار با آرایهها هستی، درست اومدی. این آزمون قراره بهت نشون بده چقدر با متدهای پرکاربرد جاوااسکریپت، مخصوصاً متد map، آشنایی داری و همزمان کلی نکته جدید یاد بگیری.

آشنایی با متد map در جاوااسکریپت
متد map() یکی از ابزارهای قدرتمند در جاوااسکریپت هست که بهت اجازه میده روی تک تک عناصر یک آرایه عملیات مشخصی رو انجام بدی و در نهایت، یک آرایه جدید با نتایج اون عملیات به دست بیاری.
تفاوت اصلیش با متدهای دیگه مثل forEach() اینه که map() همیشه یک آرایه جدید رو برمیگردونه و آرایه اصلی رو تغییر نمیده.
فرض کن یک آرایه از اعداد داری و میخوای هر کدوم از اونها رو در عدد 2 ضرب کنی. به جای استفاده از حلقههای سنتی مثل for، میتونی از map() استفاده کنی که کد رو خیلی خواناتر و کوتاهتر میکنه.
در واقع، این متد یک تابع رو به عنوان ورودی میگیره و اون تابع رو برای هر عنصر از آرایه اجرا میکنه.
اینجا میتونی یک نمونه کد ساده رو ببینی:
const numbers = [1, 2, 3, 4];
const doubledNumbers = numbers.map(function(number) {
return number * 2;
});
console.log(doubledNumbers); // خروجی: [2, 4, 6, 8]
نکات مهم درباره متد map
برای اینکه استفاده بهتری از این متد داشته باشی، لازمه چند تا نکته مهم رو بدونی. اول اینکه map() یک تابع به عنوان ورودی میگیره که سه آرگومان داره:
مقدار فعلی عنصر (currentValue)، ایندکس اون عنصر (index) و خود آرایه اصلی (array).
معمولاً ما فقط به مقدار فعلی نیاز داریم، ولی گاهی اوقات استفاده از ایندکس هم میتونه خیلی کاربردی باشه.
دومین نکته اینه که map() همیشه یک آرایه جدید رو برمیگردونه. اگه تابع ورودیات چیزی رو برنگردونه (return نکنه)، اون عنصر در آرایه جدید به undefined تبدیل میشه.
همچنین، map() برای آرایههای Sparse (آرایههایی که برخی از ایندکسهاشون خالی هستن) هم کار میکنه و اون خونههای خالی رو نادیده میگیره.
کاربردها و مثالهای متد map
متد map() خیلی جاها به درد میخوره. مثلاً برای تبدیل یک آرایه از آبجکتها به یک آرایه از مقادیر خاص، یا برای رندر کردن لیستها در فریمورکهایی مثل ریاکت.
با شرکت در این آزمون، میتونی میزان مهارت و تسلط خودت رو در مورد زبان برنامه نویسی جاوااسکریپت بسنجی و همزمان اطلاعات خوبی در مورد این موضوع به دست بیاری.
سوالاتی که در این آزمون مطرح شده، مستقیماً به کاربردهای متد map مربوطه. مثلاً:
- چطور میشه یک آرایه از رشتهها رو به حروف بزرگ تبدیل کرد؟
- آیا میشه از
map()برای فیلتر کردن عناصر آرایه استفاده کرد؟ - در چه شرایطی
map()میتونه به جای یک حلقهforساده استفاده بشه؟
با پاسخ دادن به این سوالات، به خوبی میفهمی که این متد چطور کار میکنه و چه اطلاعاتی ازش به دست میاد. در واقع، با هر جواب درست یا غلط، یک قدم به درک عمیقتر از جاوااسکریپت نزدیک میشی.
جدول مقایسه متدها
| متد | توضیح | آرایه جدید تولید میکند؟ | آرایه اصلی را تغییر میدهد؟ |
|---|---|---|---|
map() |
برای تبدیل هر عنصر و ساخت آرایه جدید | بله | خیر |
forEach() |
برای اجرای عملیات روی هر عنصر، بدون ساخت آرایه جدید | خیر | خیر |
filter() |
برای فیلتر کردن عناصر و ساخت آرایه جدید | بله | خیر |
شروع آزمون
خب، حالا که با این متد آشنا شدی، وقتشه که دانشت رو بسنجی. آمادهای؟
برای شروع این آزمون که درباره زبان برنامه نویسی جاوااسکریپت هست، روی دکمه شروع کلیک کن. موفق باشی!