انتقل إلى محتوى الدرس
الدرس 103
دورة جافا سكريبت

Static Methods

في هذا الدرس سوف نتعرف علي نوع من انواع الدوال وهو يسمي static 

أقسام الدرس
3
الأمثلة
4
اللغة
العربية
تاريخ النشر
غير محدد
المشاهدات
4,558
محتوى الدرس
في هذا الدرس 3تصفّح المواضيع

Static Methods

Static Methods : هي عبارة عن دوال يتم انشائها بداخل class معين ولا يمكن الوصول اليها الا اذا كان بداخل دالة اخري من النوع static ويتم انشائها عن طريق استخدام الكلمة " static " قبل اسم الدالة 

تستخدم الكلمة "static"  في أنشاء دوال وخصائص لل class 

غالبًا ما تكون static methods  عبارة عن دوال  أدوات مساعدة ، مثل دوال إنشاء كائنات أو نسخها ، في حين أن static property  مفيدة للتخزين المؤقت أو التكوين الثابت أو أي بيانات أخرى لا تحتاج إلى نسخها عبر instants.

علي عكس الدوال العادية فأن دوال ال class لا يمكن استدعائها في اسطر تسبق انشائها أي انها لا تدعم ال Hosting 

يسمح JavaScript بالدوال الثابته static methods التي تنتمي إلى الفئة class بدلاً من مثيل instant  لتلك الفئة class وبالتالي ، ليس هناك حاجة إلى instant مثيل لاستدعاء مثل هذه الأساليب الثابتة. يتم استدعاء static methods في ال class مباشرة. يمكن أن يكون من أي اسم. يمكن class للفئة أن تحتوي على أكثر من دالة ثابته static method  إذا حددنا أكثر من طريقة ثابتة static method بنفس الاسم ، فسيتم استدعاء الدالة الأخيرة بواسطة JavaScript. تُستخدم الكلمة الأساسية "this" لاستدعاء static method في أي دالة  أخرى في JavaScript.

Syntax

HTML
static methodName ( ){
/* code to be executed */
}

Points to remember

  • نستطيع انشاء دالة من النوع static عن طريق كتابة كلمة static قبل اسم الدالة 
  • يمكن تسمية اسم الدالة من النوع static ب أي اسم تريده
  • يمكن ان يحتوي ال class علي اكثر من دالة من النوع static 
  • اذا قمنا بأنشاء اكثر من دالة من النوع static تأخذ نفس الاسم فسوف تعتمد لغة الجافاسكريب اخر واحده تم انشائها منهم وتقوم بتجاهل الاخري 
  • يمكننا استدعاء دالة من النوع static بداخل دالة من النوع static ايضا عن طريق استخدام الكلمة this 
  • لا يمكننا الوصول مباشرة الي دالة من النوع static مباشرة عن طريق الكلمة this بدون ان تكون بداخل دالة من النوع static 

Examples

Example

HTML
<script>  
class Test  
{  
  static display()  
  {  
    return "static method is invoked"  
  }  
}  
document.writeln(Test.display());  
</script>

Example

نستطيع تنفيذ اكثر من دالة من النوع static دون حدون اي مشاكل كما في المثال التالي

HTML
<script>  
class Test  
{  
  static display1()  
  {  
    return "static method is invoked"  
  }  
  static display2()  
  {  
    return "static method is invoked again"  
  }  
}  
document.writeln(Test.display1()+"<br>");  
document.writeln(Test.display2());  
</script>

في المثال التالي نقوم خلاله بتنفيذ اكثر من دالة من النوع static بأسماء متشابها ونجد ان لغة الجافا سكريب تتجاهلهم وتعتمد اخر دالة تم انشائها فقط

HTML
<script>  
class Test  
{  
  static display()  
  {  
    return "static method is invoked"  
  }  
  static display()  
  {  
    return "static method is invoked again"  
  }  
}  
document.writeln(Test.display());  
</script>

مشاركة

هل كان هذا الدرس مفيدًا؟

جارٍ تحميل الآراء…