English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
يشرح هذا المثال كيفية استخدام ميزة arguments.callee في دوال جافا سكريبت. يُشارك هذا مع الجميع للاستفادة، وفقًا للتفاصيل التالية:
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> //الطريقة الأولى، عند تحويل اسم الدالة fac إلى دالة جديدة، لا يمكن تنفيذ حساب التوليد المتراجع بشكل مكرر // function fac(num) { // if (num <= 1) { // return 1; // } // else { // return num * fac(num - 1); // } //طريقة 2 function fac(num) { if (num <= 1) { return 1; } else { return num * arguments.callee(num - 1); //arguments.callee يشير إلى الدالة الحالية } } window.onload = function () { var func = fac; fac = function () { //إشارة إلى الدالة الجديدة return 1; } alert(func(5)); //يستخدم الطريقة الأولى ليعرض 5، ويستخدم الطريقة الثانية ليعرض قيمة ناتج مضاعفة 5 alert(fac(5)); //يظهر 1 } </script> </head> <body> </body> </html>
بالنسبة للقراء المهتمين بمزيد من المعلومات حول JavaScript، يمكنهم الرجوع إلى موضوعات هذا الموقع: "تحليل تقنيات تحكم جداول البيانات JavaScript"، "تحليل استخدام العمليات الحسابية JavaScript"، "تحليل بنية البيانات والخوارزميات JavaScript"، "تحليل تأثيرات الحركة JavaScript"، "تحليل خوارزميات البحث JavaScript"، "تحليل تأثيرات الحركة JavaScript"، "تحليل الأخطاء والتحقق من الأخطاء JavaScript"، و "تحليل خوارزميات التدوير JavaScript".
آمل أن يساعدك محتوى هذا المقال في تصميم برامجك JavaScript.
إعلان: محتوى هذا المقال تم جمعه من الإنترنت، حقوق الطبع والنشر تخص المالك الأصلي، المحتوى تم إضافته من قبل مستخدمي الإنترنت بشكل تلقائي، هذا الموقع لا يملك حقوق الملكية، لم يتم تعديل المحتوى بشكل يدوي، ولا يتحمل أي مسؤولية قانونية. إذا اكتشفت محتوى يشتبه في انتهاك حقوق النسخ، يرجى إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # بـ @) للإبلاغ، وتقديم الدليل على ذلك، إذا تم التحقق من ذلك، سيتم حذف المحتوى المزعوم فورًا.