Überprüfen Sie, ob ein Wert in JavaScript ein Objekt ist
-
Verwenden Sie die Funktion
instanceof
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht -
Verwenden Sie die Funktion
typeof()
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht - Verwenden Sie benutzerdefinierte Funktionen, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht
-
Verwenden Sie die Methode
getPrototypeOf()
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht

In JavaScript ist jeder definierte Wert entweder ein Objekt oder ein Primitiv. Jeder Wert, der kein Objekt ist und keine Methoden besitzt, wird als Primitiv bezeichnet. Was nicht primitiv ist, ist ein Objekt oder nicht.
In diesem Tutorial prüfen wir, ob ein Wert ein Objekt ist oder nicht.
Verwenden Sie die Funktion instanceof
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht
Wir überprüfen den Wert mit Hilfe der Methode instanceof
, die den Objekttyp zur Laufzeit zurückliefert.
Im folgenden Beispiel gibt die Funktion true
zurück, wenn der Wert von einem Objekttyp ist.
javascriptCopyconst test = {};
function isObject(val) {
return val instanceof Object;
}
console.log(isObject(test));
Ausgabe:
textCopytrue
Diese Methode funktioniert jedoch nicht in allen Fällen. isObject(Object.prototype)
und isObject(Object.create(null))
geben False zurück.
Verwenden Sie die Funktion typeof()
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht
Wir können den Typ von Objekten mit der Funktion typeof()
überprüfen.
Zum Beispiel,
javascriptCopyconst test = {};
function isObject(val) {
return (typeof val === 'object');
}
console.log(isObject(test));
Ausgabe:
textCopytrue
Diese Methode funktioniert auch nicht für alle Testfälle. Es gibt falsch positive Ergebnisse für die Nulltestfälle und falsch negative Ergebnisse für Funktionen zurück. Das isObject(Object)
gibt ebenfalls False zurück.
Wir können mit dieser Funktion auch eine andere Funktion definieren, die die oben genannten Einschränkungen anspricht.
Siehe den Code unten.
javascriptCopyconst test = {};
function t() {};
function isObject(val) {
if (val === null) {
return false;
}
return ((typeof val === 'function') || (typeof val === 'object'));
}
console.log(isObject(test));
console.log(isObject(t));
Ausgabe:
textCopytrue
true
Die Funktion im obigen Beispiel gibt False zurück, wenn der Wert NULL ist. Wenn der Wert vom Typ Funktion
oder vom Typ Objekt
ist, gibt er true zurück. Andernfalls wird False zurückgegeben.
Verwenden Sie benutzerdefinierte Funktionen, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht
Wir können mehr solcher Funktionen definieren, um die Arbeit basierend auf dem Konstruktor und der Klasse des Objekts zu erledigen.
Zum Beispiel,
javascriptCopyconst test = {};
function isObject(obj) {
return obj === Object(obj);
}
function isObject2(obj) {
return obj.constructor.toString().indexOf('Object') > -1;
}
console.log(isObject(test));
console.log(isObject2(test));
Ausgabe:
textCopytrue
true
Im obigen Beispiel haben wir zwei Funktionen erstellt, die prüfen könnten, ob der angegebene Wert ein Objekt ist.
Verwenden Sie die Methode getPrototypeOf()
, um in JavaScript zu überprüfen, ob ein Wert ein Objekt ist oder nicht
Die Methode getPrototypeOf
löst eine Ausnahme aus, wenn ihr Argument kein Objekt ist. Wir können es verwenden, um den Typ der Klasse des angegebenen Werts zu überprüfen.
Zum Beispiel,
javascriptCopyconst test = {};
const object1 = Object.create(test);
console.log(Object.getPrototypeOf(object1) === test);
Ausgabe:
textCopytrue
Verwandter Artikel - JavaScript Object
- Objekte aus einem Array in JavaScript suchen
- Holen Sie sich den Wert des Objekts durch eine Referenz auf den Schlüssel
- JavaScript-Objekt zerstören
- Objekt im Array nach Eigenschaftswert in JavaScript suchen
- Objekte in JavaScript drucken
- Sortieren Array von Objekten nach einzelnen Schlüssel mit Datum Wert