2017-10-10 1 views
0

Gibt es eine einfachere Möglichkeit, auf eine Objekteigenschaft in JavaScript mit einer Variablen zuzugreifen?Zugriff auf JavaScript-Objekteigenschaft mithilfe der Variablen

Hier ist, was nicht funktioniert:

var element_id = this.data().element_type + 'id'; 

Hier ist, wie es funktioniert, welche gewunden zu sein scheint.

var element_id; 
if (element_type == 'assignment') { 
    element_id = this.data().assignmentid; 
} else if (element_type == 'question') { 
    element_id = this.data().questionid; 
} else { 
    element_id = this.data().answerid; 
} 

Antwort

3

Machen Sie es wie folgt aus:

var element_id = this.data()[element_type + 'id']; 

Dies ist die alternative Syntax ist Eigentum Zugang zu Punkt, mit dem Sie eine Zeichenfolge zur Angabe der Namen der Eigenschaft angeben können.

Der Grund Ihr Ansatz hat nicht funktioniert, weil this.data().element_type + 'id' bedeutet erste bewerten this.data().element_type und dann'id', um es hinzuzufügen.

Verwandte Themen