gpt4 book ai didi

typescript - instanceof 检查接口(interface)

转载 作者:搜寻专家 更新时间:2023-10-30 20:33:38 24 4
gpt4 key购买 nike

给定以下代码:

module MyModule {
export interface IMyInterface {}
export interface IMyInterfaceA extends IMyInterface {}
export interface IMyInterfaceB extends IMyInterface {}

function(my: IMyInterface): void {
if (my instanceof IMyInterfaceA) {
// do something cool
}
}
}

我收到错误“无法找到名称 IMyInterfaceA”。处理这种情况的正确方法是什么?

最佳答案

无法在运行时检查接口(interface),因为类型信息不会以任何方式转换为已编译的 JavaScript 代码。

您可以检查特定属性或方法并决定要做什么。

module MyModule {
export interface IMyInterface {
name: string;
age: number;
}
export interface IMyInterfaceA extends IMyInterface {
isWindowsUser: boolean;
}
export interface IMyInterfaceB extends IMyInterface {

}

export function doSomething(myValue: IMyInterface){
// check for property
if (myValue.hasOwnProperty('isWindowsUser')) {
// do something cool
}
}
}

关于typescript - instanceof 检查接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31748277/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com