将对象转换为多个数组

时间:2015-01-13 13:36:36

标签: javascript jquery arrays json

我有一个JSON文件“icon.json”,其中包含:

[
    {
        "name": "sad",
        "url": "1.gif"
    },
    {
        "name": "smile",
        "url": "2.gif"
    },
    {
        "name": "smile2",
        "url": "3.gif"
    }
]

我在我的html文件中加载了AJAX

var c1 = [];
var c2 = [];
function testget(){
    $.ajax({
        url: 'icon.json',
        type: 'GET'
    })
    .done(function(msg) {
        // how to convert msg to array c1 and c2
    })
    .fail(function() {
        console.log("error");
    })
    .always(function() {
        console.log("complete");
    });
}
$(document).ready(function() {
    testget();
});

请告诉我如何将从AJAX调用返回的对象转换为数组c1和c2,如下所示:

c1 = ["sad", "smile", "smile2"];
c2 = ["1.gif", "2.gif", "3.gif"];

1 个答案:

答案 0 :(得分:8)

您可以通过简单的循环执行此操作:

.done(function(msg) {
    for (var i = 0; i < msg.length; i++) {
        c1.push(msg[i].name);
        c2.push(msg[i].url);
    }
})

Example fiddle