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

Wie überprüfe ich, ob ein Wert in JavaScript objektartig ist?

WBOY
WBOYnach vorne
2023-08-24 16:13:02488Durchsuche

如何在 JavaScript 中检查一个值是否类似于对象?

In JavaScript ist ein objektartigerWert ein Wert, der kein Grundelement und nicht undefiniert ist. Ein objektähnlicher Wert ist jeder Wert, der kein primitiver Wert ist, einschließlich Funktionen, Arrays und Objekte. In JavaScript gibt es verschiedene Möglichkeiten, zu überprüfen, ob ein Wert ein Objekt ist. In diesem Artikel stellen wir drei Möglichkeiten vor, um zu überprüfen, ob ein Wert ein Klassenobjekt in JavaScript ist.

Typeof-Operator verwenden

typeof-Operator ist ein in JavaScript integrierter Operator, der zum Überprüfen des Typs eines Werts verwendet wird. Der Operator „typeof“ gibt eine Zeichenfolge zurück, die dem Typ des Werts entspricht. Mit dem Operator „typeof“ kann überprüft werden, ob ein Wert in JavaScript einem Objekt ähnelt.

Beispiel 1

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      document.getElementById("result1").innerHTML ="typeof {}: " + typeof {};
      document.getElementById("result2").innerHTML ="typeof []: " + typeof [];
      document.getElementById("result3").innerHTML ="typeof function(){}: " + typeof function(){};
   </script>
</body>
</html>

Hier ist eine detaillierte Erklärung des obigen Codeausschnitts:

In der ersten Anweisung im Skript-Tag überprüfen wir den Typ des leeren Objekts {}. Das Der Operator „typeof“ gibt die Zeichenfolge „object“ des leeren Objekts zurück. In der zweiten Aussage Wir prüfen den Typ des leeren Arrays []. Der Operator „typeof“ gibt eine Zeichenfolge zurück „Objekt“ bedeutet ein leeres Array. In der dritten Anweisung prüfen wir den Typ von an Anonyme Funktion function(){}. Der Operator „typeof“ gibt die Zeichenfolge „function“ zurück. Anonyme Funktion.

Verwenden Sie den Instanzoperator:

Der Instanzoperator ist ein in JavaScript integrierter Operator, der verwendet wird, um zu prüfen, ob ein Wert vorliegt Ist eine Instanz einer Konstruktorfunktion. Der Instanzoperator gibt einen booleschen Wert zurück Wert, wahr, wenn der Wert eine Instanz des Konstruktors ist; value ist keine Instanz des Konstruktors. Sie können den Instanzoperator verwenden Überprüfen Sie, ob ein Wert in JavaScript objektartig ist.

Beispiel 2

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      document.getElementById("result1").innerHTML = "Is {} an instance of Object: " + ({} instanceof Object);
      document.getElementById("result2").innerHTML = "Is [] an instance of Array: " +([] instanceof Array);
      document.getElementById("result3").innerHTML ="Is function(){} is an instance of Function: " + (function(){} instanceof Function);
   </script>
</body>
</html>

Im Skript-Tag prüfen wir in der ersten Anweisung, ob das leere Objekt {} ein ist Instanz des Objektkonstruktors. Der Instanzoperator gibt zurück Der boolesche Wert true für ein leeres Objekt. In der zweiten Aussage prüfen wir, ob Leeres Array[] ist eine Instanz des Array-Konstruktors. Instanzoperator Gibt den booleschen Wert true für ein leeres Array zurück. In der dritten Aussage prüfen wir Wenn die anonyme Funktion function(){} eine Instanz des Funktionskonstruktors ist. Für anonyme Funktionen gibt der Operator „instanceof“ den booleschen Wert „true“ zurück.

Object.prototype.toString()-Methode:

Object.prototype.toString() Strong>-Methode ist eine integrierte Methode in JavaScript, die zum Konvertieren eines Objekts in einen String verwendet wird. Mit der Methode Object.prototype.toString() kann überprüft werden, ob ein Wert in JavaScript objektartig ist.

Beispiel 3

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      document.getElementById("result1").innerHTML = Object.prototype.toString.call({})
      document.getElementById("result2").innerHTML = Object.prototype.toString.call([])
      document.getElementById("result3").innerHTML = Object.prototype.toString.call(function(){})
   </script>
</body>
</html>

In der ersten Anweisung innerhalb des Skript-Tags verwenden wir Die Methode Object.prototype.toString() konvertiert ein leeres Objekt {} in einen String. Das Die Methode Object.prototype.toString() gibt die Zeichenfolge „[object Object]“ zurück. Leeres Objekt.

In der zweiten Anweisung innerhalb des von uns verwendeten Skript-Tags Die Methode Object.prototype.toString() konvertiert ein leeres Array[] in einen String. Das Die Methode Object.prototype.toString() gibt eine leere Zeichenfolge „[object Array]“ zurück.

In der dritten Anweisung verwenden wir die Methode Object.prototype.toString(), um Konvertieren Sie die anonyme Funktion function(){} in einen String. Das Die Methode Object.prototype.toString() gibt die Zeichenfolge „[object Function]“ zurück. Anonyme Funktion.

Fazit

In diesem Tutorial haben wir uns drei verschiedene Möglichkeiten angesehen, um zu überprüfen, ob ein Wert einem Objekt ähnlich ist JavaScript. Wir haben uns den Typ des Operators, die Instanz des Operators und angesehen Object.prototype.toString()-Methode. Mit all diesen Methoden kann überprüft werden, ob ein Wert vorhanden ist Ähnlich wie Objekte in JavaScript.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob ein Wert in JavaScript objektartig 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