Для каждого возвращается undefined, так как он ничего не возвращает, но вы можете использовать forEach для того же, помещая ваши данные в массив. Заметьте, я не изменил ваш подход, а просто расширил его
var modifyArray = (nums) => {
var somearray = []
nums.forEach((element) => somearray.push((element % 2 == 0) ? element *= 2 : element *= 3));
return somearray;
}
console.log(modifyArray([1, 2, 3, 4, 5]));
Используйте array.push
для передачи данных в массив. Если вы хотите использовать метод карты, вы также можете использовать его как
var modifyArray = (nums) => {
return nums.map((element) => { return (element % 2 == 0) ? element *= 2 : element *= 3 });
}
console.log(modifyArray([1,2,3,4,5]));
Хотите использовать для петель? Тогда вы также можете попробовать этот подход. Это так же, как цикл forEach
var modifyArray = (nums) => {
var somearray = [];
for (let i = 0; i < nums.length; i++) {
somearray.push((nums[i] % 2 == 0) ? nums[i] *= 2 : nums[i] *= 3)
}
return somearray;
}
console.log(modifyArray([1, 2, 3, 4, 5]));