Heim  >  Artikel  >  Web-Frontend  >  Die vier statischen Methoden zur Codeanalyse von jQuery verwenden_jquery

Die vier statischen Methoden zur Codeanalyse von jQuery verwenden_jquery

WBOY
WBOYOriginal
2016-05-16 15:49:171310Durchsuche

Jede Methode in jQery verfügt über eine entsprechende Codeanalyse, die sehr detailliert ist. Bitte lesen Sie die Einführung unten:

isFunction-Methode

Objekt, mit dem getestet wird, ob es sich um eine Funktion handelt

Beispiel:

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);
 })

Laufergebnis:

Code kopieren Der Code lautet wie folgt:

[ wahr, falsch, falsch, wahr, falsch ]

Quellcode-Analyse:

// See test/unit/core.js for details concerning isFunction.
// Since version 1.3, DOM methods and functions like alert
// aren't supported. They return false on IE (#2968).
isFunction: function( obj ) {
   return jQuery.type(obj) === "function";
},

Lassen Sie mich zunächst sagen, dass es seit Version 1.3 einen Fehler gibt. Einige DOM-Methoden und -Funktionen wie Alert geben im IE „false“ zurück, da die toString-Methode und die valueOf-Methode dies tun Umgeschrieben, jemand hat vorgeschlagen, die Methode „instanceof“ zu verwenden, aber es gibt immer noch ein Problem in ie6. Bisher wurde dieser Fehler nicht behoben. Weitere Informationen finden Sie auf der Fehlerseite der offiziellen Website Bestimmen Sie, ob das Rückgabeergebnis eine Zeichenfolgenfunktion ist

isArray-Methode

Objekt zum Testen, ob es sich um ein Array handelt

Beispiel:

$("b").append( " + $.isArray([]) );//<b>true</b>

isArray: Array.isArray || function( obj ) {
    return jQuery.type(obj) === "array";
 },

Verwenden Sie das Rückgabeergebnis der Typmethode direkt wie isFunctoin

isNumeric-Methode

Bestimmt, ob sein Argument eine Zahl ist.

Die Methode $.isNumeric() prüft, ob ihr Argument einen numerischen Wert darstellt. Wenn ja, wird true zurückgegeben. Andernfalls wird false zurückgegeben. Der Parameter kann einen beliebigen Typ haben

Beispiel:

$.isNumeric("-10"); // true
$.isNumeric(16);   // true
$.isNumeric(0xFF);  // true
$.isNumeric("0xFF"); // true
$.isNumeric("8e5"); // true (exponential notation string)
$.isNumeric(3.1415); // true
$.isNumeric(+10);  // true
$.isNumeric(0144);  // true (octal integer literal)
$.isNumeric("");   // false
$.isNumeric({});   // false (empty object)
$.isNumeric(NaN);  // false
$.isNumeric(null);  // false
$.isNumeric(true);  // false
$.isNumeric(Infinity); // false
$.isNumeric(undefined); // false

Quellcode-Analyse:

Code kopieren Der Code lautet wie folgt:

isNumeric: Funktion( obj ) {
           return !isNaN( parseFloat(obj) ) && isFinite( obj );
},

Diese Methode bestimmt nicht den Zahlentyp, sondern einen Typ, der wie eine Zahl aussieht. Solange der übergebene Parameter eine Zahl enthält, wird „true“ zurückgegeben. Verwenden Sie zunächst die parseFloat-Methode, um den Parameter in ein Array umzuwandeln. Diese Methode behält den numerischen Teil des Parameters zum Filtern bei. Entfernen Sie andere Teile. Wenn das Ergebnis nicht NaN ist und den Maximalwert nicht überschreitet, ist es wahr, andernfalls wird false zurückgegeben

isWindow-Methode

Wird verwendet, um zu testen, ob es sich um ein Fensterobjekt handelt

<div class="codetitle"><span><a style="CURSOR: pointer" data="41657" class="copybut" id="copybut41657" onclick="doCopy('code41657')"><U>复制代码</U></a></span> 代码如下:</div><div class="codebody" id="code41657">isNumeric: function( obj ) {
    return !isNaN( parseFloat(obj) ) && isFinite( obj );
},
</div>

Eine grobe Methode zur Bestimmung, ob das Objekt ein Fenster ist. Wenn das übergebene Objekt erfüllt ist und über eine setInterval-Methode verfügt, wird diese Methode nun als Fensterobjekt betrachtet Fensterobjekt. Die Details werden später analysiert. Ich hoffe, dass Ihnen alle die oben genannten Inhalte gefallen.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn