أحدث البرامج التعليمية وتطوير الشبكة
×

JS البرنامج التعليمي

JS الصفحة الرئيسية JS المقدمة JS ألى أين JS الناتج JS بناء الجملة JS البيانات JS تعليقات JS المتغيرات JS مشغلي JS علم الحساب JS مهمة JS أنواع البيانات JS وظائف JS الأجسام JS نطاق JS أحداث JS سلاسل JS طرق سلسلة JS أرقام JS طرق عدد JS الرياضيات JS التمور JS تاريخ تنسيقات JS تاريخ طرق JS المصفوفات JS طرق مجموعة JS القيم المنطقية JS مقارنات JS الظروف JS تحول JS حلقة غيرمنتهية For JS حلقة بينما JS استراحة JS نوع التحويل JS التعبير العادي JS أخطاء JS التصحيح JS الرفع JS الوضع الصارم JS دليل الاناقة JS أفضل الممارسات JS الأخطاء JS أداء JS الكلمات المحجوزة JS JSON

JS أشكال

أشكال التحقق من صحة API أشكال

JS موضوع

تعريفات الكائن خصائص الكائن طرق كائن نماذج الكائن

JS وظائف

تعاريف وظيفة وظيفة المعلمات وظيفة الاحتجاج الإغلاق وظيفة

JS HTML DOM

DOM مقدمة DOM أساليب DOM وثيقة DOM عناصر DOM HTML DOM CSS DOM الرسوم المتحركة DOM أحداث DOM EventListener DOM ملاحة DOM العقد DOM Nodelist

JS المتصفح BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS أمثلة

JS أمثلة JS HTML DOM JS HTML إدخال JS HTML الأجسام JS HTML أحداث JS المتصفح JS اختبار قصير JS ملخص

JS المراجع

JavaScript الأجسام HTML DOM الأجسام


 

JavaScript تعاريف وظيفة


يتم تعريف وظائف جافا سكريبت مع function الكلمة.

يمكنك استخدام تعريف الدالة أو تعبير وظيفة.


الإعلانات وظيفة

في هذا البرنامج التعليمي في وقت سابق، تعلمت أن تكون معلنة وظائف مع بناء الجملة التالي:

function functionName ( parameters ) {
  code to be executed
}

لن يتم تنفيذ المهام أعلن على الفور. و"حفظها لاستخدامها لاحقا" هم، وسيتم تنفيذها في وقت لاحق، عندما يتم استدعاء (دعا).

مثال

function myFunction(a, b) {
    return a * b;
}
انها محاولة لنفسك »

تستخدم الفاصلة المنقوطة لفصل البيانات جافا سكريبت القابلة للتنفيذ.
منذ إعلان الوظيفة ليست بيانا قابل للتنفيذ، أنها ليست مشتركة لوضع حد لها بفاصلة منقوطة.


التعبير وظيفة

كما يمكن تعريف وظيفة جافا سكريبت باستخدام تعبير.

تعبير وظيفة يمكن تخزينها في متغير:

مثال

var x = function (a, b) {return a * b};
انها محاولة لنفسك »

بعد أن تم تخزين التعبير وظيفة في متغير ومتغير ويمكن استخدام وظيفة:

مثال

var x = function (a, b) {return a * b};
var z = x(4, 3);
انها محاولة لنفسك »

وظيفة أعلاه هو في الواقع وظيفة غير معروفة (وظيفة بدون اسم).

وظائف المخزنة في المتغيرات لا تحتاج أسماء وظيفة. يتم استدعاء أنها دائما (وتسمى) باستخدام اسم المتغير.

وظيفة ينتهي فوق بفاصلة منقوطة لأنها جزء من بيان القابل للتنفيذ.


على Function() منشئ

كما رأيتم في الأمثلة السابقة، يتم تحديد وظائف جافا سكريبت مع function الكلمة.

يمكن أيضا تعريف الوظائف مع المدمج في وظيفة جافا سكريبت منشئ يسمى Function() .

مثال

var myFunction = new Function("a", "b", "return a * b");

var x = myFunction(4, 3);
انها محاولة لنفسك »

كنت في الواقع لم يكن لديك لاستخدام منشئ وظيفة. المثال أعلاه هو نفس الكتابة:

مثال

var myFunction = function (a, b) {return a * b};

var x = myFunction(4, 3);
انها محاولة لنفسك »

في معظم الوقت، يمكنك تجنب استخدام new الكلمة في جافا سكريبت.


Function Hoisting

في هذا البرنامج التعليمي في وقت سابق، تعلمت حول "hoisting" .

الرفع هو السلوك الافتراضي جافا سكريبت لتحريك الإعلانات إلى الجزء العلوي من النطاق الحالي.

ينطبق رفع لتعريفات المتغير والإعلانات وظيفة.

وبسبب هذا، يمكن استدعاء وظائف جافا سكريبت قبل أن يتم الإعلان عنها:

myFunction(5);

function myFunction(y) {
    return y * y;
}

لم يتم رفعت الوظائف المحددة باستخدام تعبير.


وظائف-استدعاء النفس

تعبيرات وظيفة يمكن أن يتم "، استحضار الذات".

والتعبير عن الاحتجاج النفس تم استدعاء (بدأت) تلقائيا، دون إخضاعهم.

وتعبيرات وظيفة تنفيذ تلقائيا إذا اتبعت التعبير () .

لا يمكنك استدعاء الذات إعلان وظيفة.

لديك لإضافة أقواس حول وظيفة للإشارة إلى أنه هو تعبير الدالة:

مثال

(function () {
    var x = "Hello!!";      // I will invoke myself
})();
انها محاولة لنفسك »

وظيفة أعلاه هو في الواقع وظيفة استدعاء النفس المجهولة (وظيفة من دون اسم).


وظائف يمكن استخدامها بوصفها القيم

وظائف جافا سكريبت يمكن استخدام القيم:

مثال

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3);
انها محاولة لنفسك »

وظائف جافا سكريبت يمكن استخدامها في تعبيرات:

مثال

function myFunction(a, b) {
    return a * b;
}

var x = myFunction(4, 3) * 2;
انها محاولة لنفسك »

وظائف هي كائنات

و typeof المشغل في جافا سكريبت يعود "function" للوظائف.

ولكن، يمكن أن يكون أفضل وصف وظائف جافا سكريبت ككائنات.

وظائف جافا سكريبت على حد سواء الخصائص والأساليب.

الخاصية arguments.length بإرجاع عدد من الحجج الواردة عندما تم استدعاء الدالة:

مثال

function myFunction(a, b) {
    return arguments.length;
}
انها محاولة لنفسك »

و toString() الأسلوب بإرجاع وظيفة كسلسلة:

مثال

function myFunction(a, b) {
    return a * b;
}

var txt = myFunction.toString();
انها محاولة لنفسك »

يطلق على وظيفة على النحو المحدد في خاصية كائن، وهي طريقة للكائن.
وظيفة مصمم لإنشاء كائنات جديدة، ويسمى منشئ الكائن.