使用 Typescript 检查接口类型很多会员
2022-08-29 23:02:46
这个问题是直接类比类类型检查与 TypeScript
我需要在运行时找出任何类型的变量是否实现了接口。这是我的代码:
interface A{
member:string;
}
var a:any={member:"foobar"};
if(a instanceof A) alert(a.member);
如果在打字脚本 playground 中输入此代码,则最后一行将被标记为错误,“名称 A 在当前作用域中不存在”。但事实并非如此,该名称确实存在于当前范围内。我甚至可以将变量声明更改为没有编辑器的投诉。在浏览网页并找到有关SO的另一个问题后,我将界面更改为类,但随后我无法使用对象文本来创建实例。var a:A={member:"foobar"};
我想知道类型A如何像这样消失,但看看生成的javascript可以解释这个问题:
var a = {
member: "foobar"
};
if(a instanceof A) {
alert(a.member);
}
没有将 A 表示为接口,因此无法进行运行时类型检查。
我知道javascript作为一种动态语言没有接口的概念。有没有办法对接口进行类型检查?
打字脚本游乐场的自动完成功能表明,打字脚本甚至提供了一种方法 。我该如何使用它?implements