Heim  >  Artikel  >  Web-Frontend  >  Wie überprüfe ich, ob ein Objekt in JavaScript vorhanden ist?

Wie überprüfe ich, ob ein Objekt in JavaScript vorhanden ist?

王林
王林nach vorne
2023-09-02 14:33:021324Durchsuche

JavaScript 中如何检查对象是否存在?

Dieses Objekt enthält Eigenschaften und ihre Werte in JavaScript. Wir können ein Objekt mit geschweiften Klammern ({}) erstellen. Es ähnelt einer Variablen, aber anstatt der Variablen eine Zahl, einen String oder einen booleschen Wert zuzuweisen, weisen wir einen Objektwert zu.

In diesem Tutorial lernen wir also, zu überprüfen, ob ein Objekt in JavaScript existiert. Kurz gesagt, wir müssen lernen, wie wir überprüfen können, ob eine Objektvariable existiert.

Verwenden Sie die Try-Catch-Anweisung

Normalerweise verwenden wir Try-Catch-Anweisungen, um Fehler in JavaScript zu behandeln. Wir können versuchen, auf das Objekt oder seine Eigenschaften im Try-Block zuzugreifen. Wenn das Programm das Objekt nicht findet, gibt es einen Fehler aus und geht zum Catch-Block, ohne die Ausführung des Try-Block-Codes abzuschließen.

Grammatik

Benutzer können den Try-Catch-Block gemäß der folgenden Syntax verwenden, um zu überprüfen, ob das Objekt definiert ist.

try {
   let value = object.prop;
   // object is defined
} catch {
   // object is not defined
}

Wir greifen in der obigen Syntax auf undefinierte Objekte im Try-Block zu.

Beispiel

Im folgenden Beispiel haben wir die Try-Catch-Anweisung verwendet. Im try-Block versuchen wir, auf die prop-Eigenschaft des Objekts zuzugreifen, die undefiniert ist.

Benutzer können in der Ausgabe beobachten, dass die Ausführungssteuerung die Nachricht aus dem Catch-Block druckt, beim Zugriff auf ein undefiniertes Objekt jedoch nicht die Nachricht aus dem Try-Block druckt, was einen Fehler auslöst.

<html>
<body>
   <h3>Using the <i>try-catch block</i> to check if the object is defined in JavaScript.</h2>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      try {
         let value = object.prop;
         output.innerHTML += "The object is successfully defined!"
      } catch {
         output.innerHTML += "The object is not defined!"
      }
   </script>
</body>
</html>

Verwenden Sie den Typ des Operators

Entwickler können den Typeof-Operator verwenden, um den Typ einer Variablen zu überprüfen. Hier prüfen wir, ob der Variablentyp gleich „Objekt“ ist, was bedeutet, dass das Objekt existiert. Wenn wir andernfalls „undefiniert“ oder einen anderen Datentyp erhalten, bedeutet dies, dass die Variable nicht vom Objekttyp ist.

Grammatik

Benutzer können mithilfe des Operators „typeof“ anhand der folgenden Syntax überprüfen, ob ein Objekt vorhanden ist.

let objType = typeof obj === ‘object’;

In der obigen Syntax stimmt der strikte Gleichheitsoperator mit dem Rückgabewert des Typeof-Operators und der Zeichenfolge „object“ überein.

Beispiel

Im folgenden Beispiel erstellen wir ein obj-Objekt. Wenn der Benutzer auf die Schaltfläche klickt, ruft er die Funktion isObjectDefined() auf. In der Funktion isObjectDefined() verwenden wir den Operator typeof, um den Typ der obj-Variablen abzurufen und ihn in objType zu speichern. Danach vergleichen wir den Wert der Variablen objType mit „object“, um zu überprüfen, ob das Objekt existiert.

<html>
<body>
   <h2>Using the <i>typeof</i> operator to check if the object is defined in JavaScript.</h2>
   <p id = "output"></p>
   <button onclick = "isObjectDefined()"> Check for Object </button>
   <script>
      let output = document.getElementById("output");
      let obj = {
         prop1: "hello",
         prop2: "Users!"
      }
      function isObjectDefined() {
         let objType = typeof obj;
         if (objType === "object") {
            output.innerHTML += "The code contains the object!"
         } else {
            output.innerHTML += "The code doesn't contain the object!"
         }
      }
   </script>
</body>
</html>

Verwenden Sie if-else-Anweisungen

Wie wir alle wissen, können wir Bedingungen an if-Anweisungen übergeben. Die Variable oder das Objekt selbst stellt einen booleschen Wert dar. Wenn eine Variable existiert und einen anderen Wert als „null“ enthält, handelt es sich tatsächlich um einen booleschen Wert; andernfalls handelt es sich um einen falschen booleschen Wert. Wenn wir einen falschen booleschen Wert als Bedingung für eine if-Anweisung verwenden, geht die Kontrolle immer an den else-Block.

Grammatik

Benutzer können if-else-Anweisungen gemäß der folgenden Syntax verwenden, um zu überprüfen, ob ein Objekt vorhanden ist.

if (object) {
   // object exists
} else {
   // object doesn’t exist.
}

In der obigen Syntax ist das Objekt die Variable, die das Objekt enthält.

Beispiel

Im folgenden Beispiel haben wir ein Telefonobjekt erstellt, das einige Eigenschaften und Werte als Schlüssel-Wert-Paare enthält. Danach verwenden wir die if-else-Anweisung, um zu prüfen, ob das Telefonobjekt im Code vorhanden ist.

Der Benutzer kann beobachten, dass die Steuerung an den Ausgang des if-Blocks geht, wenn das Telefonobjekt vorhanden ist.

<html>
<body>
   <h2>Using the <i>if-else</i> statement to check if the object is defined in JavaScript.</h2>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      let phone = {
         "color": "blue",
         "RAM": "8GB",
         "ROM": "128GB"
      }
      if (phone) {
         output.innerHTML += "The phone object defined in the code!"
      } else {
         output.innerHTML += "The phone object isn't defined in the code!"
      }
   </script>
</body>
</html>

Benutzer haben drei Möglichkeiten kennengelernt, um zu überprüfen, ob ein Objekt existiert. Benutzer können je nach Bedarf jede Methode verwenden. Wenn sie auch einen anderen Fehler abfangen müssen, können sie einen Try-Catch-Block verwenden; andernfalls verwenden sie eine normale if-else-Anweisung anstelle des Typeof-Operators.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob ein Objekt in JavaScript vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen