انواع توابع JavaScript
توابع، بلوکهای سازنده JavaScript هستند. آنها به شما کمک میکنند تا کد خود را سازماندهی کنید و از تکرار جلوگیری کنید.
یک تابع را مانند یک ماشین تصور کنید. شما ورودی را ارائه میدهید، ماشین وظیفهای را انجام میدهد و به شما یک خروجی میدهد.
در اینجا انواع مختلف توابعی که باید بشناسید آورده شده است:
• Function Declaration: یک تابع نامگذاری شده که میتوانید در هر جایی آن را فراخوانی کنید. این نوع تابع از hoisting پشتیبانی میکند.
• Function Expression: شما یک تابع را درون یک متغیر ذخیره میکنید. این نوع تابع از hoisting پشتیبانی نمیکند.
• Anonymous Function: تابعی بدون نام. اغلب از اینها برای کارهای یکباره استفاده میشود.
• Arrow Function: روشی کوتاه برای نوشتن توابع. این توابع در فریمورکهای مدرن مانند React رایج هستند.
• Callback Function: تابعی که به عنوان یک آرگومان به تابع دیگری پاس میدهید.
• Higher Order Function: تابعی که تابع دیگری را دریافت میکند یا برمیگرداند.
• IIFE: تابعی که بلافاصله پس از ایجاد، اجرا میشود.
• Constructor Function: تابعی که برای ایجاد اشیاء (objects) جدید استفاده میشود.
• Recursive Function: تابعی که برای حل یک مسئله، خودش را فراخوانی میکند.
• Generator Function: تابعی که مقادیر را یکی یکی تولید میکند.
• Async Function: تابعی که برای کارهایی که زمانبر هستند، مانند دریافت داده از یک API، استفاده میشود.
• Nested Function: تابعی که درون تابع دیگری قرار دارد.
• Pure Function: تابعی که همیشه برای ورودی یکسان، خروجی یکسانی میدهد و دادههای خارج از خود را تغییر نمیدهد.
• Rest Parameter: روشی برای اینکه به یک تابع اجازه دهید هر تعداد آرگومان را بپذیرد.
درک این الگوها باعث میشود کد شما تمیزتر و قابلپیشبینیتر باشد.
Source: https://www.geeksforgeeks.org/javascript/functions-in-javascript/
Optional learning community: https://dev.to/annapoo/types-of-functions-in-javascript-105