for循环用函数式语言改写

我怎么把下面的代码改写成函数式语言,不用for循环,直接用map操作可以吗,该怎么改,求大神指教

  const tempData = {name: value[j].name};
  const tempDragData = [];  for (let k = 0; k < tempArr.length; k++) {
    tempData[`col ${k}`] = tempArr[k].fieldName;
    tempDragData.push({id: `item-${i++}`, name: value[j].name, content: tempArr[k].fieldName,});
  }



素胚勾勒不出你
浏览 822回答 2
2回答

宝慕林4294392

const&nbsp;{&nbsp;tempData,&nbsp;tempDragData&nbsp;}&nbsp;=&nbsp;tempArr.reduce((obj,&nbsp;item,&nbsp;i)=>{ &nbsp;&nbsp;obj.tempData[`col&nbsp;${k}`]&nbsp;=&nbsp;item.fieldName; &nbsp;&nbsp;obj.tempDragData.push({&nbsp;&nbsp;&nbsp;&nbsp;id:&nbsp;`item-${i++}`,&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;value[j].name,&nbsp;&nbsp;&nbsp;&nbsp;content:&nbsp;item.fieldName, &nbsp;&nbsp;});&nbsp;&nbsp;return&nbsp;obj; },&nbsp;{&nbsp;&nbsp;tempData:&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;value[j].name &nbsp;&nbsp;},&nbsp;&nbsp;tempDragData:&nbsp;[] });

至尊宝的传说

const&nbsp;tempData&nbsp;=&nbsp;{name:&nbsp;value[j].name};const&nbsp;tempDragData&nbsp;=&nbsp;[]; tempArr.reduce((p,c,k,a)=>{ &nbsp;&nbsp;&nbsp;&nbsp;tempData[`col&nbsp;${k}`]&nbsp;=&nbsp;c.fieldName; &nbsp;&nbsp;&nbsp;&nbsp;tempDragData.push({id:&nbsp;`item-${i++}`,&nbsp;name:&nbsp;value[j].name,&nbsp;content:&nbsp;c.fieldName,}); })i,j和tempArr都没给,我就随便写一下reduce的处理。事实上没啥必要,for循环效率挺高的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript