将对象键值对转换为JSON

我有一个包含6个键值对的JavaScript对象:

My_Type_1:"Vegetable"
My_Type_2:"Fruit"
My_Type_3:"Dessert"

My_Value_1: "Carrot"
My_Value_2: "Apple"
My_Value_3: "Cake"

我想从上述对象中构建JSON,以便它生成以下内容:

[{"Vegetable":"Carrot"},{"Fruit":"Apple"},{"Dessert":"Cake"}]

编辑:

for (j=0;j<3;j++)
{
    var tvArray = new Array();
    var sType = 'My_Type_'+j+1;
    var sValue = 'My_Value_'+j+1;
    tvArray['Type']  = JSObject[sType];
    tvArray['Value'] = JSObject[sValue];
}

json.stringify不会产生如上所列的所需输出。

我该怎么做呢?

谢谢


你需要在j + 1附近放置括号。 你现在拥有的'My_Type_01'等等。

var obj = {
    My_Type_1:"Vegetable",
    My_Type_2:"Fruit",
    My_Type_3:"Dessert",

    My_Value_1: "Carrot",
    My_Value_2: "Apple",
    My_Value_3: "Cake"
};

var pairs = [], pair;
for(var j = 0; j < 3; j++) {
   pair = {};
   pairs.push(pair);
   pair[obj['My_Type_' + (j+1)]] = obj['My_Value_' + (j+1)];
}


console.log(JSON.stringify(pairs));
链接地址: http://www.djcxy.com/p/46283.html

上一篇: converting object key value pairs to JSON

下一篇: Json string parsing issue