Поскольку движок js не соответствует ни одному итерируемому объекту из параметров.
Посмотрите на этот пример
function foo([a, b, c]) {
console.log(a, b, c);
}
// This time, we are passing an array which is iterable
foo([1, 2, 3]);
Альтернативой является использование синтаксиса Spread, а затем функции apply
для передачи всего набора параметров в виде отдельных параметров в функцию console.log
.
function foo(...params) {
console.log.apply(undefined, params);
}
foo(1, 2, 3);