/ / Verwendetes Funktionsargument für den Zugriff auf JSON-Array-Javascript - Javascript, Arrays, Json

Benutztes Funktionsargument zum Zugriff auf JSON Array javascript - javascript, arrays, json

Ich habe eine grundsätzliche Funktion, die ein Argument benötigt. Ich werde dieses Argument als Index verwenden, um auf das Array in der JSON-Datei zuzugreifen. Ich möchte dieses Argument nutzen, anstatt innerhalb der Funktion fest zu codieren. Aus bestimmten Gründen gibt Javascript jedoch nicht den richtigen Wert zurück.

var obj = {
"first":[
["aaaaa"],
["bbbbb"],
["ccccc"],
["ddddd"],
["eeeee"]
]
}

Ich habe eine Javascript-Funktion, um auf die Datei zuzugreifen.

function addElement(ID) {
console.log(obj.ID);
}

und jetzt, wenn ich benutze

addElement("first"); //this return me undefined.

Ich möchte nicht ausdrücklich erwähnen obj.first um auf das rechte JSON-Objekt zuzugreifen. Ich möchte es allgemeiner machen, damit die Methode wiederverwendet werden kann. Fehlt mir hier etwas?

Vielen Dank...

Antworten:

3 für die Antwort № 1

JavaScript unterstützt sowohl Punktnotation als auch einen Eigenschaftennamen wörtlich (obj.foo) und Klammern und einen Eigenschaftsnamen Zeichenfolge (obj["foo"]). * Im letzteren Fall kann die Zeichenfolge das Ergebnis eines beliebigen Ausdrucks sein.

Sie brauchen also Klammern, nicht Punktnotationen:

function addElement(ID) {
console.log(obj[ID]);
}

obj.ID greift auf die Immobilie zu ID. obj[ID] greift auf die Eigenschaft zu, deren Name die Zeichenfolge der Variablen ist ID.


* Nur zur Vollständigkeit: In ES6 wird der Name der Eigenschaft unterstützt Symbols in Klammern auch, aber das ist für Ihren Code nicht relevant.