Я пытаюсь отобразить значения в функцию, которая будет принимать два числа, чтобы умножаться, но у меня возникают проблемы с этим (если это не имеет смысла, взгляните на приведенные ниже примеры).
У меня есть массив чисел, и я хотел бы удвоить/утроить/четыре раза... значения этого массива. Я создал функции, которые будут делать это, и я загружаю эти double()
и triple()
в map()
.
var arr = [1, 2, 3, 4, 5];
function double(num) {
return num * 2;
}
function triple(num) {
return num * 3;
}
console.log( arr.map(double) );
console.log( arr.map(triple) );
Это решение не масштабируется, как если бы я хотел умножить значения на 5 или 10? Мне нужна более абстрактная функция, которая будет принимать параметр того, что нужно умножить. Я смущен о том, как это сделать. Моя попытка:
var arr = [1, 2, 3, 4, 5];
function multiply(num, multiplyBy) {
return num * multiplyBy;
}
console.log( arr.map(multiplyBy(4) ); // Uncaught TypeError: NaN is not a function
Как передать multiply()
параметр multiplyBy
?