如何获取json文件的数组javascript?

时间:2013-01-26 18:41:43

标签: javascript jquery arrays json

我有一个外部文件 contacts.json 。如何将其转换为javascript数组?
这是 contacts.json 内容:

{
    "ppl1":{
        "Name":"Jhon",
        "Surname":"Kenneth",
        "mobile":329129293,
        "email":"jhon@gmail.com"
    },
    "ppl2":{
        "Name":"Thor",
        "Surname":"zvalk",
        "mobile":349229293,
        "email":"thor@gmail.com"
    },
    "ppl3":{
        "Name":"Mila",
        "Surname":"Kvuls",
        "mobile":329121293,
        "email":"mila@gmail.com"
    }
}

3 个答案:

答案 0 :(得分:11)

解决:

$.getJSON('contacts.json', function (json) {
var array = [];
for (var key in json) {
    if (json.hasOwnProperty(key)) {
        var item = json[key];
        array.push({
            name: item.Name,
            surname: item.Surname,
            mobile: item.mobile,
            email: item.email
        });            
    }
}
});

答案 1 :(得分:1)

var items = [];
$.each(JSONObject.results.bindings, function(i, obj) {
    items.push([obj.place.value, obj.lat.value, obj.long.value, obj.page.value]);
});

答案 2 :(得分:0)

已回答over here

// JavaScript array of JavaScript objects
var objs = json_string.map(JSON.parse);

// ...or for older browsers
var objs=[];
for (var i=json_string.map.length;i--;) objs[i]=JSON.parse(json_string.map[i]);

// ...or for maximum speed:
var objs = JSON.parse('['+json_string.map.join(',')+']');