IMO, salah satu perhatian utama dari bahasa TypeScript adalah untuk mendukung kode JavaScript vanilla yang ada. Ini kesan yang saya rasakan pada pandangan pertama. Lihatlah fungsi JavaScript berikut yang benar-benar valid:
Catatan: Saya tidak mengatakan bahwa saya menyukai pendekatan ini. Saya hanya mengatakan ini adalah kode JavaScript yang valid.
function sum(numbers) {
var agregatedNumber = 0;
for(var i = 0; i < arguments.length; i++) {
agregatedNumber += arguments[i];
}
return agregatedNumber;
}
Jadi, kami menggunakan fungsi ini dengan sejumlah argumen:
console.log(sum(1, 5, 10, 15, 20));
Namun, ketika saya mencobanya dengan TypeScript Playground , ini memberikan kesalahan waktu kompilasi.
Saya berasumsi bahwa ini adalah bug. Mari kita asumsikan bahwa kita tidak memiliki masalah kompatibilitas. Lalu, adakah cara untuk menulis jenis fungsi ini dengan argumen terbuka? Seperti paramsfitur di C #?
numbersparameter bernama ? Anda tidak melakukan apapun dengannya.