-4

我正在使用主干、jquery、下划线,我想获取一些我在本地文件中得到的 JSON。

我目前正在使用

        //Will get data but no access to individual objects
        $.getJSON('carinfo.json', function(data){
            console.log(data);
            var data2 = data['unitId'];
            console.log(data2);


        });

将 JSON 拉入数据变量,但我不知道从这里去哪里。例如,我将如何从字段名称“carID”中取回所有值?

这就是我的一个 JSON 条目的样子

{
    "carID": "xx",
    "xxx": {
        "unitID": "xxxxxxx",
        "positionHistory": [{
            "lat": "xxxxx",
            "long": "xxxxxxxx",
            "time": "xxxxxxxxxx",
            "status": "1",
            "estimatedSpeed": "0",
            "lastSoundFileName": "xxxxx",
            "lastSoundRange": "12",
            "lastSoundTime": "xxxxxxxx",
            "isToday": false,
            "minutesAgo": xxxxxx
        }]
    },
    "registration": "xxxxxxx",
    "color": "xxxxxxxx",
    "phone": "",
    "model": "xxxx"
}

编辑:使用 data.carID 返回未定义。

chrome控制台输出截图

在此处输入图像描述

4

2 回答 2

1

更新以说明您的数据是一个数组。

$.getJSON('carinfo.json', function (data) {
    // Loop over all the cars in data
    for (var i = 0; i < data.length; i++) {
        var car = data[i];
        car.carID === 'xx';  // just do data.whatever to get the value
        car.phone === '';

        car.xxx.positionHistory[0].status === '1'; // data.xxx.positionHistory is an array;
                                            // use [i] to get the ith element

        car.xxx['unitID'] === 'xxxxxxx';     // You can use bracket notation with a
                                      // string to get an object property if
                                      // you prefer

    }
});
于 2013-06-12T16:06:00.290 回答
0

如果您的 JSON 是一个汽车条目数组,那么您需要这样访问它们:

$.getJSON('carinfo.json', function (data) {
    for(var i=0; i<data.length; i++) {
        console.log(data[i].carID);
    }

    // or access without a loop:
    console.log(data[0].carID);
    console.log(data[1].carID);
    console.log(data[0].xxx.unitID);
}); 
于 2013-06-12T16:15:43.730 回答