在javascript中展平json数组
我正在开始使用javascript。努力将javascript对象展平在javascript中展平json数组,javascript,arrays,filtering,Javascript,Arrays,Filtering,我正在开始使用javascript。努力将javascript对象展平 [ { "timestamp":"2019-01-01T00:00:00.000Z", "result":[ { "MarketShare":89905.0, "Territory":"PHILADELPHIA PA" }, { "MarketShare":82991.0
[
{
"timestamp":"2019-01-01T00:00:00.000Z",
"result":[
{
"MarketShare":89905.0,
"Territory":"PHILADELPHIA PA"
},
{
"MarketShare":82991.0,
"Territory":"SEATTLE WA"
},
]
},
{
"timestamp":"2019-02-01T00:00:00.000Z",
"result":[
{
"MarketShare":73662.0,
"Territory":"PHILADELPHIA PA"
},
{
"MarketShare":67059.0,
"Territory":"SEATTLE WA"
}
]
},
{
"timestamp":"2019-03-01T00:00:00.000Z",
"result":[
{
"MarketShare":72898.0,
"Territory":"PHILADELPHIA PA"
},
{
"MarketShare":68013.0,
"Territory":"SEATTLE WA"
}
]
},
{
"timestamp":"2019-04-01T00:00:00.000Z",
"result":[
{
"MarketShare":74607.0,
"Territory":"PHILADELPHIA PA"
},
{
"MarketShare":66769.0,
"Territory":"SEATTLE WA"
}
]
},
{
"timestamp":"2019-05-01T00:00:00.000Z",
"result":[
{
"MarketShare":93932.0,
"Territory":"PHILADELPHIA PA"
},
{
"MarketShare":86514.0,
"Territory":"SEATTLE WA"
}
]
}
]
预期的输出格式为:
[
{"timestamp":"2019-01-01T00:00:00.000Z","MarketShare":89905.0,"Territory":"PHILADELPHIA PA"},
{"timestamp":"2019-01-01T00:00:00.000Z","MarketShare":82991.0,"Territory":"SEATTLE WA"},
{"timestamp":"2019-02-01T00:00:00.000Z","MarketShare":73662.0,"Territory":"PHILADELPHIA PA"},
{"timestamp":"2019-02-01T00:00:00.000Z","MarketShare":67059.0,"Territory":"SEATTLE WA"},
{"timestamp":"2019-03-01T00:00:00.000Z","MarketShare":72898.0,"Territory":"PHILADELPHIA PA"},
{"timestamp":"2019-03-01T00:00:00.000Z","MarketShare":68013.0,"Territory":"SEATTLE WA"},
{"timestamp":"2019-04-01T00:00:00.000Z","MarketShare":74607.0,"Territory":"PHILADELPHIA PA"},
{"timestamp":"2019-04-01T00:00:00.000Z","MarketShare":66769.0,"Territory":"SEATTLE WA"},
{"timestamp":"2019-05-01T00:00:00.000Z","MarketShare":93932.0,"Territory":"PHILADELPHIA PA"},
{"timestamp":"2019-05-01T00:00:00.000Z","MarketShare":86514.0,"Territory":"SEATTLE WA"}
]
尝试构建一个通用函数,该函数可以展平结果数组中存在的任意数量的键值对。简单解释一下如何在javascripts中操作json对象将非常有帮助您可以尝试一下(假设您的数组包含您的数组):
你能分享你迄今为止在尝试这样做时得到的代码,并指出它失败的地方吗?
let out = [];
for( obj of yourArray ) {
for( res of obj.result ) {
out.push({ ...res, timestamp:obj.timestamp })
}
}
console.log(out);