Maison  >  Article  >  interface Web  >  Partager des comparaisons entre les types JavaScript

Partager des comparaisons entre les types JavaScript

零下一度
零下一度original
2017-06-26 13:26:571083parcourir

Types de JavaScript

Types primitifs :

  • numéro

  • chaîne

  • booléen

  • null

  • non défini

Type d'objet :

  • Objet

  • fonction

  • Tableau

  • Date

    "37" + 7 = "377"
  • "37" - 7 = 30

Fonctionnement +/-

ci-dessous est vrai :
  • "1.23" == 1.23
  • 0 == faux

== null == non défini

    Opération de comparaison
  • est strictement égale à
  • différents types, renvoie false
  • sont du même type, ce qui suit est vrai :

null === null

===

    undefine === null
  • NaN != NaN
  • nouvel Objet != nouvel Obejct
  • est égal à

  • est du même type et

  • est de type différent. Essayez la conversion de type pour comparer.

null = = non défini==

  • numéro == chaîne en nombre

    ===

  • boolean == ? en nombre
  • Object == number string Essayez de convertir l'objet en type de base
  • Autres : false
  • Type d'emballage
  • pour une utilisation facile Pour les valeurs de type de base, JS fournit la fonction d'empaquetage automatique des types de base Chaque fois qu'une valeur de type de base est lue, un objet correspondant du type d'emballage de base sera. créé en arrière-plan et automatiquement détruit après l'appel.

  • Étant donné que les significations des types d'emballage de base et des types de base sont différentes, des opérations telles que typeof produiront des résultats différents. Il n'est pas recommandé d'afficher les types de données de base instanciés
  • Détection de type<.>
  • typeof
  • Ce qui suit est vrai :

instanceof

Utilisez la chaîne de prototypes pour le jugement, qui convient au jugement entre objets . Il attend un objet à gauche et un objet fonction ou un constructeur de fonction à droite.

Ce qui suit est vrai :

var a = "string";
alert(a.length);    //6

a.t = 3;
alert(a.t);         //undefined

Object.prototype.toString.apply()

Résumé

typeof 100 === “number”
typeof true === “boolean”
typeof function () {} === “function”
typeof(undefined) ) === “undefined”
typeof(new Object() ) === “object”
typeof( [1, 2] ) === “object”
typeof(NaN ) === “number”   //NaN也为number
typeof(null) === “object”

typeof

convient à la détection de type et de fonction de base et échouera en cas de rencontre avec null.

obj instanceof Object

[[Class]]

est obtenu via {}.toString, qui convient aux objets intégrés et aux types primitifs. Il échouera en cas de rencontre avec null et undefined (IE678. , etc. return [object Object] ).
[1, 2] instanceof Array === true
new Object() instanceof Array === false

Object.prototype.toString.apply([]); === “[object Array]”;
Object.prototype.toString.apply(function(){}); === “[object Function]”;
Object.prototype.toString.apply(null); === “[object Null]”
Object.prototype.toString.apply(undefined); === “[object Undefined]”

// IE6/7/8 Object.prototype.toString.apply(null) 返回”[object Object]”
instanceof

convient aux objets personnalisés. Il peut également être utilisé pour détecter des objets natifs. Il échouera lors de la détection entre différentes iframes et fenêtres.

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