Heim  >  Artikel  >  Web-Frontend  >  Codebeschreibung zur Bestimmung, ob eine Variable ein Array, eine Funktion oder ein Objekt in JS ist

Codebeschreibung zur Bestimmung, ob eine Variable ein Array, eine Funktion oder ein Objekt in JS ist

伊谢尔伦
伊谢尔伦Original
2017-07-18 11:31:001153Durchsuche

Array

Array.isArray in ECMAScript5 ist die native Methode zur Beurteilung von Arrays, die von IE9 und höher unterstützt wird. Aus Kompatibilitätsgründen können Sie in Browsern, die diese Methode nicht haben, stattdessen Object.prototype.toString.call(obj) === '[object Array]' verwenden.

var isArray = Array.isArray || function(obj) {
    return Object.prototype.toString.call(obj) === '[object Array]';
}

JQ kapselt eine Funktion jQuery.inArray(value, array), die nach dem angegebenen Wert im Array sucht und seinen Index zurückgibt (gibt -1 zurück, wenn er nicht gefunden wird).
Wert Der Wert, nach dem gesucht werden soll. Array Ein Array, das durchsucht werden soll.

function inArray1(needle,array,bool){  
    if(typeof needle=="string"||typeof needle=="number"){  
        for(var i in array){  
            if(needle===array[i]){  
                if(bool){  
                    return i;  
                }  
                return true;  
            }  
        }  
        return false;  
    }  
}

Funktion

Der einfachste und leistungsstärkste Weg ist typeof obj == 'function'. Angesichts der Fehler in einigen Browserversionen ist Object.prototype.toString.call(obj) === '[object Function]' die zuverlässigste Methode.

var isFunction = function(obj) {
    return Object.prototype.toString.call(obj) === '[object Function]';
}
if(typeof /./ != 'function' && typeof Int8Array != 'object') {
    isFunction = function(obj) {
        return typeof obj == 'function';
    }
}

Objekt

In JavaScript sind komplexe Typen Objekte und Funktionen sind ebenfalls Objekte. Wenn Sie typeof für die beiden oben genannten verwenden, können Sie „Objekt“ bzw. „Funktion“ erhalten. Außerdem müssen Nullwerte ausgeschlossen werden, da typeof null auch „object“ zurückgibt.

var isObject = function(obj) {
    var type = typeof obj;
    return type === 'function' || type === 'object' && !!obj;
}

Das obige ist der detaillierte Inhalt vonCodebeschreibung zur Bestimmung, ob eine Variable ein Array, eine Funktion oder ein Objekt in JS ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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