2017-04-18 12 views
-2

Ich möchte den Wert von Array erhalten. Es zeigt Typfehler an. Der Code istJavaScript-Array-Filter zeigt Typ Fehler

var user = "username6"; 
var result = categories.filter(x => x.user)[0].user; 

Typeerror: kann Eigenschaft 'user' undefinierter

lesen Aber es funktioniert in

var result = categories.filter(x => x.username6)[0].username6; 

ich die "username6" Variable in Benutzer geben wollen. Und führen Sie

var result = categories.filter(x => x.user)[0].user; 

Wie es möglich ist? Bitte hilf mir?

+0

Randnotiz verwenden: Wenn Sie sich '.filter tun finden (...) [0]', 'verwenden .find (...) 'stattdessen (Polyfill, wenn nötig; dein Transpiler sollte einen haben, den du benutzen kannst):' var result = categories.find (x => x [user]); ' –

Antwort

0

Sie sollten die Klammern Notation anstelle der Punktnotation

var user = "username6"; 
var result = categories.filter(x => x[user])[0][user]; 
+0

Es ist nur ein Duplikat: http://stackoverflow.com/ Fragen/4244896/dynamisch-Zugriff-Objekt-Eigenschaft-Using-Variable –