Как вернуть ноль из функции с пустым параметром в JavaScript? - PullRequest
0 голосов
/ 13 мая 2018

Напишите функцию умножения, которая принимает любое количество аргументов и умножает их все вместе. Если есть только один номер, он вернет этот номер.
Если числа не переданы, возвращается 0.

Например:

multiply() возвращает 0

multiply(1) возвращает 1

multiply(1, 2) возвращает 2

multiply(1, 2, 3) возвращает 6

multiply(1, 2, 3, 4) возвращает 24

function multiply(...a) {
  if (!a){
    return 0;
  } else if (a === Number){
    return a; 
  } else {
    return a.reduce((current, previous)=>{return previous*current});
  }
}

multiply(1,2,3);

1 Ответ

0 голосов
/ 13 мая 2018

После ... операция В этом случае у вас всегда будет массив, поэтому вы просто должны использовать:
if(!a.length){ вместо if(!a){;

Кроме того, вам не нужно return в reduce() функции обратного вызова в этом случае . Вы можете изменить его на:

(current, previous) => previous*current
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...