如何将此 json 字符串转换为此格式的另一个 json 字符串?
How to convert this json string to another json string of this format?
我有一个从 HTTP GET 服务返回的 json 字符串,如下所示;
x=[{
"value": 1.37,
"date_transacted": "2015-01-01"
},
{
"value": 1.62,
"date_transacted": "2015-02-01"
},
{
"value": 1.83,
"date_transacted": "2015-03-01"
}]
我想把它转换成这样的东西;
y=[{
c: [{
v: "2015-01-01"
},
{
v: "1.37"
}]
},
{
c: [{
v: "2015-01-02"
},
{
v: "1.62"
}]
},
{
c: [{
v: "2015-01-03"
},
{
v: "1.83"
}]
}]
如何在 javascript 中完成此操作?
没有必要给出完整的编码答案,因为我不想被填满。关于从哪里开始的一些提示将很有用,因为我现在不知所措。
编辑:在根据这个问题的答案提供的提示进行一些初步工作后,我问了一个后续问题。 这个问题的答案在那边
首先使用 JSON.parse(string) 将 JSON 字符串转换为 JavaScript 对象。 See this answer.
在您的例子中,您将获得一组对象。遍历数组。对于其中看起来像这样的每个对象...
{
"value": 1.37,
"date_transacted": "2015-01-01"
}
创建一个如下所示的新对象...
{
c: [{
v: "2015-01-01"
},
{
v: "1.37"
}]
}
并将新对象推入另一个数组。
现在您已经在 JavaScript 变量中获得了重新格式化的数据。如果要将其转换回 JSON,请按照 here.
所述使用 JSON.stringify(object)
我有一个从 HTTP GET 服务返回的 json 字符串,如下所示;
x=[{
"value": 1.37,
"date_transacted": "2015-01-01"
},
{
"value": 1.62,
"date_transacted": "2015-02-01"
},
{
"value": 1.83,
"date_transacted": "2015-03-01"
}]
我想把它转换成这样的东西;
y=[{
c: [{
v: "2015-01-01"
},
{
v: "1.37"
}]
},
{
c: [{
v: "2015-01-02"
},
{
v: "1.62"
}]
},
{
c: [{
v: "2015-01-03"
},
{
v: "1.83"
}]
}]
如何在 javascript 中完成此操作?
没有必要给出完整的编码答案,因为我不想被填满。关于从哪里开始的一些提示将很有用,因为我现在不知所措。
编辑:在根据这个问题的答案提供的提示进行一些初步工作后,我问了一个后续问题。
首先使用 JSON.parse(string) 将 JSON 字符串转换为 JavaScript 对象。 See this answer.
在您的例子中,您将获得一组对象。遍历数组。对于其中看起来像这样的每个对象...
{
"value": 1.37,
"date_transacted": "2015-01-01"
}
创建一个如下所示的新对象...
{
c: [{
v: "2015-01-01"
},
{
v: "1.37"
}]
}
并将新对象推入另一个数组。
现在您已经在 JavaScript 变量中获得了重新格式化的数据。如果要将其转换回 JSON,请按照 here.
所述使用 JSON.stringify(object)