使用对象文字将JSON名称/值转换为数组

时间:2014-09-02 16:14:11

标签: javascript json

我正在寻找转换如下所示的键值JSON代码:

{
    "AK": "Arkansas",
    "NY": "New York",
    "CA": "California"
}

进入一个数组,其中来自JSON的键值成为对象文字中的一个值。

0 : {code :"AK", name:"Arkansas"},
1 : {code:"NY", name:"New York"},
2 : {code:"CA", name:"California}

有一种简单的方法吗?

2 个答案:

答案 0 :(得分:2)

使用此代码:

var obj = {
    "AK": "Arkansas",
    "NY": "New York",
    "CA": "California"
}
var array1 = [];
for (key in obj) {
    array1.push({
        "code": key,
        "name": obj[key]
    });
}
console.log(array1);

答案 1 :(得分:1)

有几种方法,最兼容的浏览器是:

var p = [];
//Places would be your initial object
for (x in places) {
     p.push({code: x, name: places[x]})
}

也许你应该使用像lodash这样的东西来使这样的事情变得更容易