انواع توابع 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