Maison  >  Article  >  interface Web  >  Description du code expliquant comment déterminer si une variable est un tableau, une fonction ou un objet dans JS

Description du code expliquant comment déterminer si une variable est un tableau, une fonction ou un objet dans JS

伊谢尔伦
伊谢尔伦original
2017-07-18 11:31:001107parcourir

Array

Array.isArray dans ECMAScript5 est la méthode native de jugement des tableaux, prise en charge par IE9 et versions ultérieures. Pour des raisons de compatibilité, dans les navigateurs qui ne disposent pas de cette méthode, vous pouvez utiliser Object.prototype.toString.call(obj) === '[object Array]' à la place.

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

JQ encapsule une fonction jQuery.inArray(value, array) qui recherche la valeur spécifiée dans le tableau et renvoie son index (renvoie -1 si elle n'est pas trouvée).
value La valeur à rechercher. array Un tableau dans lequel effectuer la recherche.

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

Fonction

La méthode la plus simple et la plus performante est typeof obj == 'function'. Compte tenu des bugs de certaines versions de navigateurs, la méthode la plus fiable est Object.prototype.toString.call(obj) === '[object Function]'.

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

Objet

En JavaScript, les types complexes sont des objets, et les fonctions sont également des objets. En utilisant typeof sur les deux ci-dessus, vous pouvez obtenir respectivement « objet » et « fonction ». De plus, les valeurs nulles doivent être exclues, car typeof null renvoie également « objet ».

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn