التابع ‎‎jQuery.isFunction()‎‎ في jQuery

من موسوعة حسوب
< jQuery‏ | jQuery
مراجعة 17:26، 30 يونيو 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (إضافة محتويات الصفحة.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث

jQuery.isFunction( value )‎

أهمل مع الإصدار: 3.3.

القيم المعادة

يعيد قيمةً منطقيَّةً (Boolean).

الوصف

يتحقَّق هذا التابع إن كان الكائن الممرَّر إليه دالةَ ردِّ نداءٍ أم لا.

jQuery.isFunction( value )‎

أُضيف مع الإصدار: 1.2.

value

أي شيء، ويمثل القيمة المراد التحقُّق منها.

بدءًا من الإصدار jQuery 3.3، أصبح التابع jQuery.isFunction()‎ مهملًا. في أغلب الحالات، يمكن الاستعاضة عن استعمال هذا التابع عبر استخدام typeof x === "function"‎.

ملاحظة: بدءًا من الإصدار jQuery 1.3، لا يُضمن أن تُكتشَف الدوال التي يوفِّرها المتصفح، مثل alert()‎ وتوابع عناصر DOM مثل getAttribute()‎، كدوالٍ في بعض المتصفحات مثل المتصفح IE.

أمثلة

التحقُّق من بعض القيم الممرَّرة إن كانت دوالًا أم لا:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery.isFunction مثالٌ عن استعمال التابع</title>
  <style>
  div {
    color: blue;
    margin: 2px;
    font-size: 14px;
  }
  span {
    color: red;
  }
  </style>
  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
 
<div>jQuery.isFunction( objs[ 0 ] ) = <span></span></div>
<div>jQuery.isFunction( objs[ 1 ] ) = <span></span></div>
<div>jQuery.isFunction( objs[ 2 ] ) = <span></span></div>
<div>jQuery.isFunction( objs[ 3 ] ) = <span></span></div>
<div>jQuery.isFunction( objs[ 4 ] ) = <span></span></div>
 
<script>
function stub() {}
var objs = [
  function() {},
  { x:15, y:20 },
  null,
  stub,
  "function"
];
 
jQuery.each( objs, function( i ) {
  var isFunc = jQuery.isFunction( objs[ i ]);
  $( "span" ).eq( i ).text( isFunc );
});
</script>
 
</body>
</html>

سنحصل عند تنفيذ هذه الشيفرة على النتيجة التالية:

jQuery.isFunction( objs[ 0 ] ) = true
jQuery.isFunction( objs[ 1 ] ) = false
jQuery.isFunction( objs[ 2 ] ) = false
jQuery.isFunction( objs[ 3 ] ) = true
jQuery.isFunction( objs[ 4 ] ) = false

التحقُّق إن كان الوسيط المعطى دالةً:

$.isFunction(function() {});

سنحصل عند تنفيذ هذه الشيفرة على النتيجة التالية:

true

مصادر