هناك أربعة أنواع من الدوال او Functions في الجافاسكربت

  • Function Declarations.
  • Function Expressions.
  • Anonymous Functions.
  • Arrow Functions.

Function Declarations :

كلمة function تكتب أولا ثم يكتب اسم الدالة ثم قائمة parameters بين القوسين (يفصل بينهم بفاصلة وهي فارغة في المثال السابق) وأخيرا الكود الذي ينفذ ويسمى “the function body” بين القوسين المعقوفين.

إن Function Declaration في Global Scope يجعلها مرئية في كل السكربت ولا يهم من أين نستخدمها.

وفقًا لخوارزميات داخلية فعندما تقوم جافا سكريبت بالتجهيز لتنفيذ السكربت فهي تبحث عن Function Declarations وتقوم بإنشاء هذه الدوال كخطوة في مرحلة التهيئة initialization stage.

وبعد الإنتهاء من إنشاء كل الدوال يبدأ تنفيذ السكربت ولهذا يمكننا استخدام

الدوال.

Function Expression :

بعد تخزين Function في متغير ، يمكن استخدام المتغير كدالة. لا تحتاج الوظائف المخزنة في متغيرات إلى أسماء وظائف. يتم استدعاءها دائمًا باستخدام اسم المتغير. يتم إنشاء Function Expression عندما يصل لها التنفيذ

عندما يصل التنفيذ إلى الجزء الأيمن من عملية Assignment يمكننا إستخدام الدالة.

Anonymous Functions :

معظم إستخدامات هاته الدوال كـ Callbacks و من الأفضل أن لا تستعملها.

Arrow Functions :

ظهرت هاته الدوال مع بداية ظهور نسخة جافاسكربت ES6. تكتب الدوال السهمية بصيغة مختصرة