IMO, l'une des principales préoccupations du langage TypeScript est de prendre en charge le code JavaScript vanilla existant. C'est l'impression que j'ai eue au premier coup d'œil. Jetez un œil à la fonction JavaScript suivante qui est parfaitement valide:
Remarque: je ne dis pas que j'aime cette approche. Je dis simplement que c'est un code JavaScript valide.
function sum(numbers) {
var agregatedNumber = 0;
for(var i = 0; i < arguments.length; i++) {
agregatedNumber += arguments[i];
}
return agregatedNumber;
}
Donc, nous consommons cette fonction avec n'importe quel nombre d'arguments:
console.log(sum(1, 5, 10, 15, 20));
Cependant, lorsque j'essaye cela avec TypeScript Playground , cela donne des erreurs de compilation.
Je suppose que c'est un bug. Supposons que nous n'avons pas les problèmes de compatibilité. Alors, y a-t-il un moyen d'écrire ce type de fonctions avec des arguments ouverts? Telles que la paramsfonctionnalité en C #?
numbersparamètre nommé ? Vous ne faites rien avec.