Maison  >  Article  >  interface Web  >  Comment vérifier le type d'une variable ou d'un objet en JavaScript ?

Comment vérifier le type d'une variable ou d'un objet en JavaScript ?

WBOY
WBOYavant
2023-09-03 10:09:021275parcourir

如何在 JavaScript 中检查变量或对象的类型?

JavaScript est un langage de programmation faiblement typé, ce qui signifie qu'il n'existe pas de règles de ce type pour déclarer les types de variables. Une variable peut stocker plusieurs types de données dans un programme, il est donc important de comprendre le type de variable avant de l'utiliser. En JavaScript, nous pouvons utiliser l'opérateur typeof pour vérifier le type d'une variable ou d'un objet. L'opérateur typeof prend une variable et renvoie son type au format chaîne.

En plus de l'opérateur typeof, JavaScript fournit également l'opérateur instanceof pour vérifier le type d'une variable ou d'un objet. L'opérateur instanceof accepte deux paramètres : l'objet à vérifier et le constructeur du type à vérifier. Cet opérateur renvoie vrai si le constructeur est de type objet.

Utiliser le type d'opérateur

L'opérateur

typeof est un opérateur unaire qui accepte un paramètre et renvoie une chaîne indiquant le type du paramètre. Par exemple, l'opérateur typeof peut être utilisé pour vérifier le type d'une variable ou d'un objet.

Grammaire

typeof variable_name 

Dans la syntaxe ci-dessus, variable_name est le nom de la variable dont le type doit être déterminé.

L'opérateur

typeof peut renvoyer l'une des chaînes suivantes -

  • "numéro" signifie numéro

  • "chaîne" signifie chaîne

  • "booléen"

  • "Indéfini" signifie valeur indéfinie

  • "objet" signifie objet (y compris les tableaux et les fonctions)

  • « symbole » pour les symboles (nouveau dans ECMAScript 2015)

Exemple

Dans cet exemple, nous utilisons l'opérateur typeof pour vérifier le type d'une variable ou d'un objet en JavaScript. Nous avons déclaré plusieurs variables de différents types tels que des nombres, des chaînes, des booléens, etc. Nous affichons ces variables sur la page Web. Nous avons utilisé un gestionnaire d'événements de clic sur le bouton pour vérifier le type de la variable. Les utilisateurs peuvent voir toutes les variables et leurs types sur la page Web en cliquant simplement sur le bouton. L'opérateur typeof permet de déterminer le type d'une variable ou d'un objet avant d'effectuer une opération spécifique. Par exemple, vous pouvez l'utiliser pour vous assurer qu'une variable est un nombre avant d'effectuer des opérations arithmétiques, ou pour vous assurer qu'une variable est une chaîne avant de la concaténer avec une autre chaîne.

<html>
<body>
   <h2>Checking the <i> type of a variable or object </i> in JavaScript</h2>
   <h4>The variables are as follows:</h4>
   <ul>
      <li>let num = 10</li>
      <li>let str = "Hello"</li>
      <li>let bool = true</li>
      <li>let un</li>
      <li>let n = null</li>
      <li>let arr = [1, 2, 3]</li>
      <li>let func = function () {}</li>
   </ul>
   <button onclick = "checkType()"> Check Type </button>
   <div id = "root"> </div>
   <script>
      let num = 10
      let str = 'Hello'
      let bool = true
      let un
      let n = null
      let arr = [1, 2, 3]
      let func = function () {}
      let root = document.getElementById('root')
      function checkType() { 
         root.innerHTML = '<h4>The types of variables are as follows:</h4>'
         root.innerHTML += '<ul> <li> let num = 10 is a ' + typeof num + ' </li> <li> let str = "Hello" is a ' + typeof str + ' </li> <li> let bool = true is a ' + typeof bool + ' </li> <li> let un is a ' + typeof un + ' </li> <li> let n = null is a ' + typeof n + ' </li> <li> let arr = [1, 2, 3] is a ' + typeof arr + ' </li> <li> let func = function () {} is a ' + typeof func + ' </li> </ul> '
      }
   </script>
</body>
</html> 

Utiliser l'instance de l'opérateur

En JavaScript, l'opérateur instanceof est utilisé pour déterminer le type d'un objet au moment de l'exécution. Il renvoie un résultat booléen indiquant si l'objet est une instance d'une classe spécifique.

Grammaire

object_name instanceof object_constructor 

Dans la syntaxe ci-dessus, object_name est le nom de l'objet dont vous souhaitez déterminer le type.

Exemple

Dans cet exemple, nous utilisons l'opérateur instanceof pour vérifier le type d'une variable ou d'un objet en JavaScript. Nous déclarons une variable de type chaîne à l'aide du constructeur de classe String et un objet de classe personnalisé "myClassObject" qui est un objet de "myClass" et les affichons sur la page Web. Nous utilisons un gestionnaire d'événements de clic sur le bouton pour vérifier le type d'objet et l'afficher sur la page Web.

<html>
<body>
   <h2>Checking the <i> type of a variable or object </i> in JavaScript</h2>
   <h4>The object variables are as follows:</h4>
   <ul> 
      <li>let str = new String('Hello World!')</li>
      <li>let myClassObject = new MyClass()</li>
   </ul>
   <button onclick = "checkType()"> Check Type </button>
   <div id = "root"> </div>
   <script>
      let str = new String('Hello World!')
      class MyClass {}
      let myClassObject = new MyClass()
      let root = document.getElementById('root')
      function checkType() {
         root.innerHTML = '<h4> The types of objects using instanceof operator: </h4>'
         root.innerHTML += '<ul> <li> str is an instance of String: ' + (str instanceof String) + ' </li> <li> str is an instance of MyClass: ' + (str instanceof MyClass) + ' </li> </ul>'
         root.innerHTML += ' <ul> <li> myClassObject is an instance of String: ' + (myClassObject instanceof String) + ' </li> <li> myClassObject is an instance of MyClass: ' + (myClassObject instanceof MyClass) + ' </li> </ul>'
      }
   </script>
</body>
</html> 
Les opérateurs

typeof et instanceof ne renvoient que parfois les résultats attendus lorsqu'ils sont utilisés avec certains objets. Par exemple, l'opérateur typeof renvoie « objet » pour les tableaux, même s'il s'agit d'un type d'objet en JavaScript. Pour vérifier correctement si une valeur est un tableau, vous pouvez utiliser la méthode Array.isArray().

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer