HarmonyOS 怎么判断一个class对象实例是否实现了某个接口?

假设有个:

class A implement MyInterface { ... }
const a: A = new A()

怎么判断一个a对象是否实现了MyInterface接口?

阅读 470
1 个回答

HarmonyOS当前并没有对接口进行类型判断的api,可以使用as进行类型转换后判断是否有对应属性,来判断具体接口类型。

示例代码如下:

interface A { name: string; }

interface B extends A { age: number; }

interface C extends A { sex: string; }

function test(obj: A) {
  let some = obj as B;
  if (some.age !== undefined) {
    console.log(some.age + '')
  }
}

let obj: B = { name: '1', age: 2 }
test(obj);
logo
HarmonyOS
子站问答
访问
宣传栏