Maison > Article > interface Web > Description du code expliquant comment déterminer si une variable est un tableau, une fonction ou un objet dans JS
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!