Maison > interface Web > js tutoriel > 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

伊谢尔伦
Libérer: 2017-07-18 11:31:00
original
1187 Les gens l'ont consulté

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]';
}
Copier après la connexion

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;  
    }  
}
Copier après la connexion

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';
    }
}
Copier après la connexion

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;
}
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal