الفرق بين المراجعتين ل"jQuery/jQuery/isFunction"

من موسوعة حسوب
< jQuery‏ | jQuery
اذهب إلى التنقل اذهب إلى البحث
(إضافة محتويات الصفحة.)
 
(إضافة محتويات الصفحة.)
 
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:التابع <code>‎‎jQuery.isEmptyObject()‎</code>‎ في jQuery}}</noinclude>
+
<noinclude>{{DISPLAYTITLE:التابع <code>‎‎jQuery.isFunction()‎</code>‎ في jQuery}}</noinclude>
== <code>jQuery.isEmptyObject( object )‎</code> ==
+
== <code>jQuery.isFunction( value )‎</code> ==
 +
أهمل مع الإصدار: 3.3.
  
 
=== القيم المعادة ===
 
=== القيم المعادة ===
سطر 6: سطر 7:
  
 
=== الوصف ===
 
=== الوصف ===
يتحقَّق هذا التابع إن كان الكائن المُمرَّر إليه فارغًا (لا يحوي أيَّة خاصِّيَّة قابلة للإحصاء) أم لا.
+
يتحقَّق هذا التابع إن كان الكائن الممرَّر إليه دالةَ ردِّ نداءٍ أم لا.
  
=== <code>jQuery.isEmptyObject( object )‎</code> ===
+
=== <code>jQuery.isFunction( value )‎</code> ===
أُضيف مع الإصدار: 1.4.
+
أُضيف مع الإصدار: 1.2.
  
==== <code>objcet</code> ====
+
==== <code>value</code> ====
الكائن المراد التحقُّق منه لمعرفة إن كان فارغًا أم لا.
+
أي شيء، ويمثل القيمة المراد التحقُّق منها.
  
بدءًا من الإصدار jQuery 1.أصبح هذا التابع يتحقَّق من خاصِّيَّات الكائن نفسه، والخاصِّيَّات الموروثة عبر سلسلة <code>prototypes</code> (لا يستخدم هنا <code>hasOwnProperty</code>). يجب أن يكون الوسيط المعطى [[JavaScript/Object|كائن JavaScript مجرَّد]] (Object)، إذ قد لا تعطي أنواع الكائنات الأخرى (مثل عناصر DOM، [[JavaScript/Number|والأعداد]] أو [[JavaScript/String|السلاسل النصية]] الأوليَّة، وكائنات المضيف ...إلخ.) نتائج ثابتة عبر المتصفحات. لتحديد إن كان الكائن المعطى [[JavaScript/Object|كائن JavaScript مجرَّد]]، استعمل التابع <code>[[jQuery/jQuery/isPlainObject|‎$.isPlainObject()‎]]</code>.
+
بدءًا من الإصدار jQuery 3.أصبح التابع <code>jQuery.isFunction()‎</code> مهملًا. في أغلب الحالات، يمكن الاستعاضة عن استعمال هذا التابع عبر استخدام <code>typeof x === "function"‎</code>.
 +
 
 +
'''ملاحظة''': بدءًا من الإصدار jQuery 1.3، لا يُضمن أن تُكتشَف الدوال التي يوفِّرها المتصفح، مثل <code>alert()</code>‎ وتوابع عناصر DOM مثل <code>getAttribute()‎</code>، كدوالٍ في بعض المتصفحات مثل المتصفح IE.
  
 
=== أمثلة ===
 
=== أمثلة ===
التحقُّق إن كان الكائن المعطى فارغًا أم لا:<syntaxhighlight lang="javascript">
+
التحقُّق من بعض القيم الممرَّرة إن كانت دوالًا أم لا:<syntaxhighlight lang="html">
jQuery.isEmptyObject({}); // true
+
<!doctype html>
jQuery.isEmptyObject({ foo: "bar" }); // false
+
<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>
 +
 
 +
</syntaxhighlight>سنحصل عند تنفيذ هذه الشيفرة على النتيجة التالية:<syntaxhighlight lang="text">
 +
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
  
 +
</syntaxhighlight>التحقُّق إن كان الوسيط المعطى دالةً:<syntaxhighlight lang="javascript">
 +
$.isFunction(function() {});
 +
</syntaxhighlight>سنحصل عند تنفيذ هذه الشيفرة على النتيجة التالية:<syntaxhighlight lang="text">
 +
true
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== مصادر ==
 
== مصادر ==
* [http://api.jquery.com/jQuery.isEmptyObject/ صفحة التابع ()jQuery.isEmptyObject في توثيق jQuery الرسمي.]
+
* [http://api.jquery.com/jQuery.isFunction/ صفحة التابع ()jQuery.isFunction في توثيق jQuery الرسمي.]
 
[[تصنيف:jQuery]]
 
[[تصنيف:jQuery]]
 
[[تصنيف:jQuery Method]]
 
[[تصنيف:jQuery Method]]
 +
[[تصنيف:jQuery Deprecated]]
 
[[تصنيف:jQuery Utilities]]
 
[[تصنيف:jQuery Utilities]]

المراجعة الحالية بتاريخ 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

مصادر