Ich habe folgendes Objekt übergeben:
var myVar = { typeA: { option1: "one", option2: "two" } }
Ich möchte in der Lage sein, den Schlüssel typeA
aus der obigen Struktur herauszuziehen .
Dieser Wert kann sich jedes Mal ändern, also beim nächsten Mal typeB
.
Ich würde gerne wissen, ob es für mich eine Möglichkeit gibt, so etwas wie den folgenden Pseudocode zu tun:
var theTypeIs = myVar.key();
Auf diese Weise kann ich, wenn ich dieses Objekt übergeben und den ersten Wert des Objekts herausziehen kann, in diesem Fall typeA
und basierend darauf verschiedene Dinge mit option1
und tun option2
.
javascript
user3447415
quelle
quelle
Wie bei den anderen Antworten können Sie
theTypeIs = Object.keys(myVar)[0];
den ersten Schlüssel erhalten. Wenn Sie mehr Schlüssel erwarten, können Sie verwendenObject.keys(myVar).forEach(function(k) { if(k === "typeA") { // do stuff } else if (k === "typeB") { // do more stuff } else { // do something } });
quelle
typeB
.Wenn Sie den Schlüsselnamen des
myVar
Objekts erhalten möchten, können Sie ihnObject.keys()
für diesen Zweck verwenden.var result = Object.keys(myVar); alert(result[0]) // result[0] alerts typeA
quelle
Ich war auch auf der Suche nach einem Ergebnis dafür und endete mit;
const MyObject = { SubObject: { 'eu': [0, "asd", true, undefined], 'us': [0, "asd", false, null], 'aus': [0, "asd", false, 0] } };
Für diejenigen, die das Ergebnis als Zeichenfolge haben wollten:
Object.keys(MyObject.SubObject).toString()
Ausgabe:
"eu,us,aus"
Für diejenigen, die das Ergebnis als Array haben wollten:
Array.from(Object.keys(MyObject))
Ausgabe:
Array ["eu", "us", "aus"]
Für diejenigen, die nach einer "enthält" -Typmethode suchen: als numerisches Ergebnis:
console.log(Object.keys(MyObject.SubObject).indexOf("k"));
Ausgabe:
-1
console.log(Object.keys(MyObject.SubObject).indexOf("eu"));
Ausgabe:
0
console.log(Object.keys(MyObject.SubObject).indexOf("us"));
Ausgabe:
3
als boolesches Ergebnis:
console.log(Object.keys(MyObject.SubObject).includes("eu"));
Ausgabe:
true
In deinem Fall;
var myVar = { typeA: { option1: "one", option2: "two" } } // Example 1 console.log(Object.keys(myVar.typeA).toString()); // Result: "option1, option2" // Example 2 console.log(Array.from(Object.keys(myVar.typeA))); // Result: Array ["option1", "option2" ] // Example 3 as numeric console.log((Object.keys(myVar.typeA).indexOf("option1")>=0)?'Exist!':'Does not exist!'); // Result: Exist! // Example 3 as boolean console.log(Object.keys(myVar.typeA).includes("option2")); // Result: True! // if you would like to know about SubObjects for(var key in myVar){ // do smt with SubObject console.log(key); // Result: typeA } // if you already know your "SubObject" for(var key in myVar.typeA){ // do smt with option1, option2 console.log(key); // Result: option1 // Result: option2 }
quelle