【发布时间】:2014-12-02 08:05:12
【问题描述】:
对不起,如果这个问题是重复的,但我必须问它。我正在使用原型 JS 从文件中读取 JSON 数据。 JSON 数据如下所示;
{
"metaData": {
"date": "2014-10-06"
},
"listOf": [
{
"fname": "bill",
"id": 23
},
{
"fname": "tom",
"id": 35
},
{
"fname": "jerry",
"id": 12
},
{
"fname": "batman",
"id": 68
},
{
"fname": "superman",
"id": 55
},
{
"fname": "sp-m/super",
"id": 55
},
]
}
在我的代码中,我需要访问“listOf”键/数组,然后我想遍历每个元素并根据“fname”键对这些元素进行排序。我正在通过 ajax 请求读取这些数据。以下是该代码;
new Ajax.Request('/file.json', {
method:'get',
onSuccess: function(transport){
var json = transport.responseText.evalJSON();
console.log(json);
}
});
现在 VAR JSON 包含所需数据,但我不知道如何访问“listOf”数据并对其进行迭代。
我尝试像这样使用 .each 函数;
json.list.each(alert);
但它只打印“object OBJECT”。
请帮我解决这个问题。
P.S:请尝试使用原型 JS 来回答,但不要使用 Jquery。
【问题讨论】:
-
假设您实际使用了
json.listOf.each(alert),那么这就是预期的结果 - 与例如相同的结果alert({ "fname": "bill", "id": 23 })会的。
标签: javascript arrays json prototypejs