IMO,TypeScript語言的主要關注點之一是支持現有的vanilla JavaScript代碼。這是我第一眼看到的印象。看看下面的JavaScript函數是完全有效的:使用TypeScript的開放式函數參數
注意:我不是說我喜歡這種方法。我只是說這是一個有效的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,它提供了編譯時錯誤。
我假設這是一個錯誤。假設我們沒有兼容性問題。那麼,有沒有辦法用開放式參數來編寫這種類型的函數呢?如C#中的params
功能?
使用lambda表達式只是好奇,爲什麼你甚至有一個命名'數字'參數?你沒有做任何事情。 –
@JustinMorgan至少有一個參數讓Intellisense至少暗示應該有一些參數。 – drzaus