JavaScript: использовать forEach в функции более высокого порядка для манипулирования / добавления каждого элемента в массиве Ошибка: неопределенное возвращение - PullRequest
0 голосов
/ 08 июня 2019

Я пытаюсь добавить 10 к каждому элементу в массиве, используя forEach.Но когда я нажимаю, а затем возвращаю свой новый массив, он возвращает меня неопределенным.

Ниже мой код:

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 Ответ

0 голосов
/ 08 июня 2019

Вам нужно 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));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...