[英]Best way to transform this json with lodash
I am starting with lodash
and I need to transform this json:我从lodash
开始,我需要转换这个 json:
{
"keyA": "valA",
"keyB": [
"valB1",
"valB2",
"valB3",
"valB4",
],
"keyC": [
"valC1",
"valC2",
"valC3",
"valC4",
],
"...": ["...","...","...","..."],
"keyD": "valD"
}
to this json:到这个json:
[
{
"keyB":"valB1",
"keyC":"valC1"
},
{
"keyB":"valB2",
"keyC":"valC2"
},
{
"keyB":"valB3",
"keyC":"valC3"
},
{
"keyB":"valB4",
"keyC":"valC4"
},
]
keyB
, keyC
and other array keys always have the same size. keyB
、 keyC
和其他数组键始终具有相同的大小。
Those keys which are not arrays I have to ignore them.那些不是数组的键我必须忽略它们。
any idea?任何的想法? thanks.谢谢。
Something like this?像这样的东西?
var o = {
"keyA": "valA",
"keyB": [
"valB1",
"valB2",
"valB3",
"valB4",
],
"keyC": [
"valC1",
"valC2",
"valC3",
"valC4",
],
"keyD": "valD",
"keyE": [
"valE1",
"valE2",
"valE3",
"valE4",
]
};
var r = [];
_.each(o, function(v, k) {
if (_.isArray(v)) {
_.each(v, function(v2, i) {
r.length <= i && r.push({});
r[i][k] = v2;
});
}
});
console.log(r);
Fiddle: http://jsfiddle.net/ferahl/1rjx3tL8/小提琴: http : //jsfiddle.net/ferahl/1rjx3tL8/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.