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

من موسوعة حسوب
< jQuery‏ | jQuery
اذهب إلى التنقل اذهب إلى البحث
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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

مصادر