TypeScript: типы для вариационных функций
Возможный дубликат:
аргументы функции с открытым концом TypeScript
Есть ли приемлемая сигнатура типа для вариативных функций? Пример:
function sum () {
var sum = 0;
for (var i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
};
console.log(sum(1, 2, 3, 4, 5));
дает мне ошибку компиляции:
foo.ts(9,12): Supplied parameters do not match any signature of call target
Ответы
Ответ 1
В TypeScript вы можете использовать "...
" для достижения вышеуказанного шаблона:
function sum (...numbers: number[]) {
var sum = 0;
for (var i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
return sum;
};
Это должно позаботиться о вашей ошибке.