我如何访问此json中的内容?

时间:2012-03-16 03:31:36

标签: javascript json

{"EN":[{"EN":"please enter a valid number :"},{"EN":"Please enter a valid weight:"}],"NL":[{"NL":"Vul een geldig nummer: in"},{"NL":"Vul een geldig gewicht: in"}],"DE":[{"DE":"Bitte geben Sie eine gültige Zahl:"},{"DE":"Bitte geben Sie eine gültige Gewicht:"}],"FR":[{"FR":"S'il vous plaît entrer un nombre valide:"},{"FR":"S'il vous pla&#238t entrer un poids valide:"}],"PL":[{"PL":"Proszę wpisać aktualny numer:"},{"PL":"Proszę podać poprawny waga:"}]}

我想要数据“请输入有效的重量:”

我试过alert(json['EN'][1]); //它给了我对象对象提醒

2 个答案:

答案 0 :(得分:2)

解决方案

如果您的对象名为json,则解决方案如下:

json['EN'][1]['EN']

说明

通过json['EN'][1],您将获得以下对象:

{"EN":"Please enter a valid weight:"}

所以唯一剩下的就是访问与其“EN”密钥相关联的值。

聚苯乙烯。当然,您可以通过两种方式访问​​JavaScript中的属性,例如。 json['EN']json.EN,但第一个是首选。方括号表示法被视为最佳实践,它更灵活。有关此主题的更多信息:JavaScript property access: dot notation vs. brackets?

答案 1 :(得分:1)

你快到了。外部EN是一个对象文字数组,内部EN是一个对象属性。您正在寻找外部属性[1]的第二个数组元素(EN):

普通的JavaScript对象语法,使用点状属性和括号数组索引:

alert(json.EN[1].EN);
// please enter a valid weight

使用括号内对象属性的替代语法:

alert(json["EN"][0]["EN"]);


// Others...
alert(json.EN[0].EN);
// please enter a valid number

alert(json.NL[0].NL);
// Vul een geldig nummer: in