当值与类型为偶数时,TypeScript中的一些语法是否会起作用?

当值与类型为偶数时,TypeScript中的一些语法是否会起作用?,typescript,Typescript,TypeScript中是否有一些语法糖允许初始化值,而无需复制type type=右侧的表达式?(是,分号必须替换为逗号) 类型={ 傅:“阿尔法”; 好极了:“好极了”; }; 常量值:类型={ 福:“阿尔法”, 好极了:“好极了” }; 如果您想从表达式中推断类型,typeof是您的朋友: const value = { foo: "alpha", bravo: "bravo" }; type Type = typeof value; 这将为您提供如下类型: type Ty

TypeScript中是否有一些语法糖允许初始化
,而无需复制
type type=
右侧的表达式?(是,分号必须替换为逗号)

类型={
傅:“阿尔法”;
好极了:“好极了”;
};
常量值:类型={
福:“阿尔法”,
好极了:“好极了”
};

如果您想从表达式中推断类型,
typeof
是您的朋友:

const value = {
    foo: "alpha",
    bravo: "bravo"
};
type Type = typeof value;
这将为您提供如下类型:

type Type = {
    foo: string;
    bravo: string;
};
如果需要将每个值类型推断为文字,可以执行以下操作:

const value = {
    foo: "alpha",
    bravo: "bravo"
} as const;

type Type = typeof value;
现在
类型将是:

type Type = {
    readonly foo: "alpha";
    readonly bravo: "bravo";
};
type Type = {
    foo: "alpha";
    bravo: "bravo";
};
如果不希望属性为
只读
,可以执行以下操作:

const value = {
    foo: "alpha" as const,
    bravo: "bravo" as const
};

type Type = typeof value;
类型将是:

type Type = {
    readonly foo: "alpha";
    readonly bravo: "bravo";
};
type Type = {
    foo: "alpha";
    bravo: "bravo";
};

非常高质量的答案!非常感谢你!