【发布时间】:2018-08-22 05:52:31
【问题描述】:
如何在javascript中更改以下格式的JSON
data = [{acquired: "2018-03-09T22:49:52.935Z", mean_ndvi: -0.0483685}
{acquired: "2018-02-13T22:49:16.568Z", mean_ndvi: 0.00595065}
{acquired: "2018-04-01T22:50:30.912Z", mean_ndvi: -0.033455}]
准确的
data = {"2018-03-09T22:49:52.935Z":-0.0483685, "2018-02-13T22:49:16.568Z": 0.00595065, "2018-04-01T22:50:30.912Z": -0.033455}
我的尝试。
var json =data; var obj2 ={}; var obj3 =[];
for(var i = 0; i < json.length; i++)
{ var obj = json[i];
obj2 = {[obj.acquired]:obj.mean_ndvi};
obj3.push(obj2); }
console.log(obj3);
我能够以以下格式获取它。
{2018-04-01T22:50:30.912Z: -0.033455},
{2018-04-01T22:50:30.912Z: -0.033455},
{2018-04-01T22:50:30.912Z: -0.033455}
请检查可以进行哪些更改以在一行中获得结果。
【问题讨论】:
-
到目前为止你有什么尝试?
-
是的,我做到了,我可以得到这种格式。 {2018-04-01T22:50:30.912Z:-0.033455},{2018-04-01T22:50:30.912Z:-0.033455},{2018-04-01T22:50:30.912Z:-0.033455}
-
如果你想要答案我可以告诉你:
var obj = {};for(d of data) obj[d.acquired] = d.mean_ndvi;,但是这个问题你最好自己尝试一下。 -
请添加此特定问题的解决方案。我被困在这里很长时间了。我已经尝试了很多。
-
使用简单的数组迭代,获取每一项的值,然后设置为你想要的对象。尝试给这个问题一个解决方案并尝试解决它。如果您在尝试求解时阻止,我们很乐意为您提供帮助。
标签: javascript arrays json