وظائف مجهولة هي وظائف بدون أسماء فعلية.
لدى JavaScript العديد من الوظائف المجهولة ، وهي ليست واضحة عنها ، مما يجعل من السهل رؤية الكود بالدوار.
فيما يلي الوظائف المجهولة التي تم استدعاؤها بنجاح:
نسخة الكود كما يلي:
(وظيفة () {
تنبيه (3) ؛
})
() ؛
(وظيفة F1 () {
تنبيه (4) ؛
}) () ؛ // يمكنك الاتصال بهذه الطريقة إذا لم تكن وظيفة مجهولة! !
وظيفة void () {
تنبيه ("ماء باطل") ؛
} () ؛ // يقال أن الأكثر كفاءة. في JavaScript ، void هو عامل ، والذي يحدد أن التعبير يتم حسابه ولكنه لا يعيد قيمة.
!وظيفة(){
تنبيه ('! الماء') ؛
} () ؛ // المشغل + استدعاء وظيفة مجهولة
(وظيفة(){
تنبيه ("الماء") ؛
} ()) ؛ // أقواس صغيرة + وظائف مجهولة المصدر لها القليل من التنفيذ ~
يجب عليك أيضًا الانتباه إلى الأخطاء المتكررة عند استخدام وظائف مجهولة:
نسخة الكود كما يلي:
// طريقة كتابة الخطأ 1
(وظيفة F1 () {
تنبيه (5) ؛
}) f1 () ؛ // لم تعد وظيفة مجهولة الهوية!
// طريقة كتابة الخطأ 2
(وظيفة () {
تنبيه (6) ؛
}) ؛ // بناء الجملة ليس خاليًا من الأخطاء ، ولا توجد وظيفة مجهولة تسمى ، وليس هناك فرصة للاتصال بها لاحقًا ، لأنه لا يوجد اسم ، ولا يمكن العثور على إدخال المكالمات.
// طريقة كتابة الخطأ 3
وظيفة () {
تنبيه (1) ؛
} () ؛ // اتصل به دون إشارة إلى الوظيفة
أيضا ، انتبه لفهم دور الأقواس.
يمكن أن تقسم الأقواس تعبيراتنا إلى أجزاء ، وكل قطعة ، أي كل زوج من الأقواس ، لها قيمة إرجاع. قيمة الإرجاع هذه هي في الواقع قيمة إرجاع التعبير بين قوسين. لذلك ، عندما نرفق وظيفة مجهولة مع زوج من الأقواس ، تُرجع الأقواس كائن وظيفة من دالة مجهولة المصدر. لذلك ، فإن إضافة وظائف مجهولة إلى زوج الأقواس يشبه الوظيفة المسماة ونحصل على موضعها المرجعي. لذلك إذا قمت بإضافة قائمة معلمات بعد هذا المتغير المرجعي ، فسيتم تنفيذ نموذج استدعاء الوظيفة العادية.