Typescript 扩展对象中的可选参数

Typescript 扩展对象中的可选参数,typescript,Typescript,我有以下定义: interface A { new ({a, b?, c}); } 由于可选的b参数,编译失败: error TS1005: ',' expected. error TS1180: Property destructuring pattern expected. 移除?使其可编译 如何在不将排列对象提取为其他类型的情况下表达可选参数?您没有描述a、b和c的类型。 您应该注意到它们都被键入为any 要指定其类型,您需要具有类型信息,例如 interface A {

我有以下定义:

interface A {
    new ({a, b?, c});
}
由于可选的b参数,编译失败:

error TS1005: ',' expected.
error TS1180: Property destructuring pattern expected.
移除?使其可编译


如何在不将排列对象提取为其他类型的情况下表达可选参数?

您没有描述
a
b
c
的类型。 您应该注意到它们都被键入为
any

要指定其类型,您需要具有类型信息,例如

interface A {
    new ({a, b, c}: { a: string, b?: string, c: string});
}

您可以在其中指定
b
是可选的。

在对象中时不是。对象键没有顺序的概念。