js contient cinq types de données chaîne de nombres booléen objet non défini et type de fonction fonction
En voyant cela, vous vous demanderez certainement : comment puis-je distinguer les objets, les tableaux et qu'en est-il de null ?
Ensuite, nous utiliserons un outil pointu : Object.prototype.toString.call
Il s'agit d'une fonction d'extension de prototype native de l'objet, utilisée pour distinguer plus précisément le type de données.
Essayons ceci :
var gettype=Object.prototype.toString
gettype.call(' aaaa') Output [ object String]
gettype.call(2222) Output [object Number]
gettype.call(true) Output [object Boolean]
gettype call(undefined) Output. [objet non défini]
gettype.call(null) Sortie [objet Null]
gettype.call({}) Sortie [objet objet]
gettype.call([ ]) Output [object Array]
gettype.call(function(){}) Output [object Function]
Voyant cela, nous venons de résoudre le problème.
En fait, il existe de nombreux jugements de type dans js
[object HTMLpElement] p object,
[object HTMLBodyElement] body object,
[object Document] (IE) ou
[objet HTMLDocument] (firefox, google)...
Jugement de divers nœuds DOM, ces éléments seront utilisés lorsque nous écrirons des plug-ins.
Les méthodes qui peuvent être encapsulées sont les suivantes :
var gettype=Object.prototype.toString var utility={ isObj:function(o){ return gettype.call(o)=="[object Object]"; }, isArray:function(o){ return gettype.call(o)=="[object Array]"; }, isNULL:function(o){ return gettype.call(o)=="[object Null]"; }, isDocument:function(){ return gettype.call(o)=="[object Document]"|| [object HTMLDocument]; } ........ }
1 Déterminer s'il s'agit d'un type de tableau
<script type="text/javascript"> //<![CDATA[ var a=[0]; document.write(isArray(a),'<br/>'); function isArray(obj){ return (typeof obj=='object')&&obj.constructor==Array; } //]]> </script>
2 Déterminer s'il s'agit d'un type chaîne
<script type="text/javascript"> //<![CDATA[ document.write(isString('test'),'<br/>'); document.write(isString(10),'<br/>'); function isString(str){ return (typeof str=='string')&&str.constructor==String; } //]]> </script>
3 Déterminer s'il s'agit d'un type numérique
<script type="text/javascript"> //<![CDATA[ document.write(isNumber('test'),'<br/>'); document.write(isNumber(10),'<br/>'); function isNumber(obj){ return (typeof obj=='number')&&obj.constructor==Number; } //]]> </script>
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!