Javascript 按特定要求拆分阵列

Javascript 按特定要求拆分阵列,javascript,underscore.js,Javascript,Underscore.js,我正在学习使用js。我将数组分组。但现在我需要拆分数组 我有一个分组的JSON数组。比如, var arr=[{“key”:“A”,“value”:[“erdem”,“metin”,“tamer”,“hüseyin”]}] 我希望这就是结果 var arr = [{"key" : "A", "value" : "erdem"},{"key" : "A", "value" : "metin"},{"key" : "A", "value" : "tamer"},{"key" : "A", "valu

我正在学习使用js。我将数组分组。但现在我需要拆分数组

我有一个分组的JSON数组。比如,

var arr=[{“key”:“A”,“value”:[“erdem”,“metin”,“tamer”,“hüseyin”]}]

我希望这就是结果

var arr = [{"key" : "A", "value" : "erdem"},{"key" : "A", "value" : "metin"},{"key" : "A", "value" : "tamer"},{"key" : "A", "value" : "hüseyin"}]

如果你告诉我怎么做,我很高兴。

@forguta你可以使用此方法获得所需的输出

var arr = [{"key": "A", "value": ["erdem", "metin", "tamer", "hüseyin"]}]
_.map(arr,function(item){ 
     var temp=[];      
     _.map(item.value, function(x){         
      temp.push({key: item.key, value: x});      
    }); 
  return temp;  
});
您也可以在不使用temp变量的情况下获得结果(缩写)

香草JS,不带下划线/lodash:
var-arr=[
{“key”:“A”,“value”:[“erdem”,“metin”,“tamer”,“hüseyin”],
{“键”:“B”,“值”:[“foo”,“bar”]}
];
//创建修改过的对象数组
var result=arr.map(item=>item.value.map(v=>({key:item.key,value:v}));
//打印结果

console.log([].concat(…result))
如何
减少主数组,然后用一个初始空数组对每个结果数组进行压缩

arr.reduce((i,o)=>i.concat(o.value.map(v=>({key:o.key,value:v})),[])

var-arr=[
{“key”:“A”,“value”:[“erdem”,“metin”,“tamer”,“hüseyin”],
{“键”:“B”,“值”:[“foo”,“bar”]}
];
var res=arr.reduce((i,o)=>i.concat(o.value.map(v=>({key:o.key,value:v})),[]);

控制台日志(res)到目前为止您尝试了什么?我无法尝试,因为我不知道使用什么。如果有任何简单的例子或辅助文档我可以做到这一点,我会毫不犹豫地尝试@Mariosantini认为您应该尝试这样的方法:
\uu.flatte(\uu.map(yourArr,theSplitFunction),true)
   _.map(arr,function(item){ 
      return _.map(item.value, function(x){
         return {key: item.key, value: x};
        });
    });