Ich arbeite derzeit an einer Webanwendung, die JavaScript als Frontend verwendet, und ich habe Probleme mit Objektschlüsseln.Javascript: undefined
Ich versuche, auf ein Objekt zuzugreifen, und ich möchte den Objektschlüssel dynamisch abrufen, aber jedes Mal habe ich einen Fehler "undefined Schlüssel".
Hier ist mein Code:
var data = JSON.parse(response);
sites = [];
for (var i = 0; i < Object.keys(data[0]).length; i++) {
sites.push(Object.keys(data[0])[i]);
};
for (var x = 0; x < sites.length; x++) {
for (var u = 0; u < Object.keys(data[0])[sites[x]].length; u++) {
console.log(data[0].sites[x])
}
}
Mit data[0]
:
Array[4]
BAK
:
Array[4]
BAN
:
Array[4]
BAR
:
Array[4]
BAY
:
Array[4]
BLC
:
Array[4]
BOL
:
Array[6]
BTO
:
Array[6]
CAR
:
Array[5]
CUD
:
Array[4]
DAD
:
Array[4]
sites[]
enthält den Schlüssel (Beispiel: BAK, BAN, BAY, etc.). Ich protokollierte die Websites und es enthält die richtigen Schlüssel, aber jedes Mal, wenn ich rufe, heißt es "nicht identifizierte Schlüssel eines Objekts". Wenn ich es manuell data[0].BAK[x]
einstelle, ist es ein Erfolg.
Hoffe du kannst mir helfen zu lösen und zu erklären, warum das passiert.
'sites' ist eine Variable, auf seine eigene, und ist keine Eigenschaft von' data'. Haben Sie versucht, 'console.log (data [0] .sites [x])' '? – evolutionxbox
Sie können eine bestimmte Zeile Object.keys (data [0]) ersetzen. Ersetzen Sie durch response.length –
Bitte fügen Sie Ihre Daten in Literal Notation. –