IMO,TypeScript语言的主要关注点之一是支持现有的 vanilla 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));
但是,当我使用TypeScript Playground进行尝试时,它会出现编译时错误。
我假设这是一个错误。假设我们没有兼容性问题。那么,有没有办法用开放式参数编写这种类型的函数呢?比如params
C#中的特性?