IMO, một trong những mối quan tâm chính của ngôn ngữ TypeScript là hỗ trợ mã JavaScript vani hiện có. Đây là ấn tượng mà tôi có ngay từ cái nhìn đầu tiên. Hãy xem hàm JavaScript sau đây hoàn toàn hợp lệ:
Lưu ý: Tôi không nói rằng tôi thích cách tiếp cận này. Tôi chỉ nói rằng đây là một mã JavaScript hợp lệ.
function sum(numbers) {
var agregatedNumber = 0;
for(var i = 0; i < arguments.length; i++) {
agregatedNumber += arguments[i];
}
return agregatedNumber;
}
Vì vậy, chúng tôi sử dụng hàm này với bất kỳ số lượng đối số nào:
console.log(sum(1, 5, 10, 15, 20));
Tuy nhiên, khi tôi thử điều này với TypeScript Playground , nó cho lỗi thời gian biên dịch.
Tôi giả định rằng đây là một lỗi. Hãy giả sử rằng chúng tôi không có vấn đề về khả năng tương thích. Sau đó, có cách nào để viết loại hàm này với các đối số kết thúc mở không? Chẳng hạn như paramstính năng trong C #?
numberstham số được đặt tên ? Bạn không làm gì với nó.