Ich habe ein Objekt in JavaScript:
var obj = {
"a": "test1",
"b": "test2"
}
Wie überprüfe ich, ob test1 im Objekt als Wert vorhanden ist?
javascript
Brown KL
quelle
quelle
Object.values(obj).includes('test1');
Antworten:
Sie können die Werte eines Objekts in ein Array umwandeln und testen, ob eine Zeichenfolge vorhanden ist. Es wird davon ausgegangen, dass das Objekt nicht verschachtelt ist und die Zeichenfolge genau übereinstimmt:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values
quelle
if(Object.values(obj).includes('test1')) { ... }
Sie können die Array-Methode verwenden
.some
:quelle
Versuchen:
Oder
Dies funktioniert für
NaN
und-0
für diese Werte nicht. Sie können (anstelle von===
) dem verwenden, was in ECMAScript 6 neu ist:Mit modernen Browsern können Sie auch Folgendes verwenden:
quelle
Verwenden Sie eine
for...in
Schleife:quelle
Kürzester ES6 + ein Liner:
quelle
Sie können Object.values () verwenden :
und verwenden Sie dann die indexOf () -Methode:
Beispielsweise:
Ein ausführlicheres Beispiel finden Sie unten:
quelle
Ich habe einen Test mit all diesen Beispielen durchgeführt und diesen in Node.js v8.11.2 ausgeführt . Nehmen Sie dies als Leitfaden, um Ihre beste Wahl zu treffen.
Ausgabe auf meinem Server
quelle
Für einen Einzeiler würde ich sagen:
quelle
Sie können dies versuchen:
quelle
Sie können dieses versuchen
quelle
Funktion aufgerufen:
quelle
Die Object.values () -Methode hat ein Array zurückgegeben (getValuesOfObject zugewiesen), das die eigenen aufzählbaren Eigenschaftswerte des angegebenen Objekts (obj) enthält. Das Array wurde mithilfe der
for
Schleife iteriert , um jeden Wert (Werte im getValuesfromObject) abzurufen, und gibt eine Boolean () -Funktion zurück, um herauszufinden, ob der Ausdruck ("text1" ist ein Wert im Schleifenarray) wahr ist.quelle
quelle
Die einfache Antwort darauf ist unten angegeben.
Dies funktioniert, weil jeder JavaScript-Typ eine "Konstruktor" -Eigenschaft auf seinem Prototyp hat .
quelle
Dies sollte eine einfache Überprüfung sein.
Beispiel 1
quelle
var a = {};
<br/>'hasOwnProperty' in a' //true