我去了这个json数组
var responseArr = {options :{ch:["Hi", "By",], en:["Peter", "John"]}}
是否可以更改为此表格
var responseArrB = {"options": [{'ch':'Hi',en:'Peter'},{ch:'By',en:'John'}]}
我试过
let responseArrB = responseArr.options.ch.map( item => Object.assign({ch:item.ch, en:item.en}))
console.log(vv)
但是responseArrB..show
{ch: undefined, en: undefined}
我可以显示ch或en但不能组合它
let arrThree = responseArr.options.ch.map( item => Object.assign({ch:item, en:item}))
答案 0 :(得分:1)
您可以迭代密钥并为每个密钥构建一个新数组。
var object = { options: { ch: ["Hi", "By",], en: ["Peter", "John"] } },
result = {
options: Object
.keys(object.options)
.reduce((r, k) => (
object.options[k].forEach((a, i) => {
r[i] = r[i] || {};
r[i][k] = a;
}), r), [])
};
console.log(result);

.as-console-wrapper { max-height: 100% !important; top: 0; }