✍️ تابع پیکانی یا arrow function یک روش دیگر برای نوشتن تابع است. به جای واژه function، پارامترها را مینویسیم و با => به بدنه وصل میکنیم. وقتی بدنه فقط یک عبارت دارد، نتیجه همان عبارت بهصورت خودکار برمیگرده. این شکل برای تبدیلهای کوچک مثل دو برابر کردن عدد یا ساختن عنوان مناسب است.
در مثال، تابع تبدیل دقیقه به ثانیه تنها یک محاسبه دارد. اگر بدنه را داخل آکولاد بنویسی، باید return را هم صریح اضافه کنی. آکولاد یعنی بدنه دستوری؛ جاوااسکریپت دیگر حدس نمیزنه کدام عبارت باید خروجی باشه. خطای رایج اینه که x => { x * 2; } را معادل x => x * 2 بدونیم؛ اولی خروجی مفیدی برنمیگردونه.
فعلاً با تابعهای همزمان و ورودیهای ساده کار میکنیم. در انتخاب بین شکل کوتاه و بلند، خوانایی را ملاک بگیر. اگر چند مرحله یا یک شرط داری، بدنه آکولادی با return روشنتر میشه. نام متغیری هم که تابع را نگه میداره بهتره کار واقعی آن را بگه.
const minutesToSeconds = minutes => minutes * 60;
const explicit = minutes => {
return minutes * 60;
};
console.log(minutesToSeconds(3)); // 180
console.log(explicit(3)); // 180
فعالیت شما
دو شکل تابع minutesToSeconds را بخوان و تشخیص بده چرا هر دو 180 برمیگردانند.