是否可以在typescript中为接口函数提供默认参数?
我将Number类扩展如下:是否可以在typescript中为接口函数提供默认参数?,typescript,interface,default-parameters,Typescript,Interface,Default Parameters,我将Number类扩展如下: interface Number { evolution(now: number, before: number): string; } Number.prototype.magnitude = function(d=1, suffix="") { //… } 我喜欢提供默认参数 但在没有显式参数的情况下使用时,ass如下所示: label = "÷ " + show.magnitude(); 我收到一个错误“提供的参数与签名不匹配”您需要告
interface Number {
evolution(now: number, before: number): string;
}
Number.prototype.magnitude = function(d=1, suffix="") {
//…
}
我喜欢提供默认参数
但在没有显式参数的情况下使用时,ass如下所示:
label = "÷ " + show.magnitude();
我收到一个错误“提供的参数与签名不匹配”您需要告诉TypeScript编译器这些参数是: 在JavaScript中,每个参数都是可选的,用户可以根据自己的需要将其删除。当它们这样做时,它们的值是未定义的。我们可以通过添加一个?在参数末尾,我们希望是可选的 下面是一个与您想要完成的类似的示例:
interface ISum {
(baz?: number, buz?: number): number;
}
let sum: ISum = (baz = 1, buz = 2) => {
return baz + buz;
}
console.log(sum()); //Console: 3
console.log(sum(2)); //Console: 4
console.log(sum(2, 7)); //Console: 9
相关的: