为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript:在高阶函数中使用 forEach 来操作/添加到数组中的每个元素错误

JavaScript:在高阶函数中使用 forEach 来操作/添加到数组中的每个元素错误

大话西游666 2021-06-09 17:57:33
我正在尝试使用 forEach 向数组中的每个元素添加 10。但是当我推送然后返回我的新数组时,它会返回未定义的数组。下面是我的代码:const array = [1, 2, 3];function changeArray(array, inputFunc) {  //console.log(array)  let output = [];  array.forEach((ele) => {    return output.push(ele + 10);  });}changeArray(array)预期回报:[11, 12, 13]我究竟做错了什么?
查看完整描述

1 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

您需要return output从最终函数开始 -forEach不返回任何内容,并且不会对传递的回调内部的返回值执行任何操作。


const array = [1, 2, 3];


function changeArray(array, inputFunc) {


  let output = [];

  array.forEach((ele) => {

    output.push(ele + 10);

  });

  

  return output;

  

}


console.log(changeArray(array));

您还可以使用map更简洁的代码:


const array = [1, 2, 3];


function changeArray(array, inputFunc) {

  return array.map(e => e + 10);  

}


console.log(changeArray(array));


查看完整回答
反对 回复 2021-06-24
  • 1 回答
  • 0 关注
  • 185 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信