ИМО, одна из главных забот машинописи языка является поддержка существующей ванили JavaScript кода. Это впечатление , которое я имел на первый взгляд. Взгляните на следующую функцию JavaScript , которая отлично действует:
Примечание: Я не говорю, что мне нравится этот подход. Я просто говорю, что это правильный код JavaScript.
function sum(numbers) {
var agregatedNumber = 0;
for(var i = 0; i < arguments.length; i++) {
agregatedNumber += arguments[i];
}
return agregatedNumber;
}
Итак, мы уничтожаем эту функцию с любым количеством аргументов:
console.log(sum(1, 5, 10, 15, 20));
Однако, когда я пытаюсь это с машинописью Playground , он дает ошибку компиляции времени.
Я предполагаю , что это ошибка. Давайте предположим , что у нас нет проблем с совместимостью. Тогда, есть ли способ , чтобы написать этот тип функций с открытыми концами аргументов? Такие , как paramsфункции в C #?













