你能告诉我如何在 typescript + angular 中检查变量的 typeof 吗?
import { Component } from '@angular/core';
interface Abc {
name : string
}
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
name = 'Angular 6';
a:Abc= {
name:"sss"
}
constructor(){
console.log(typeof this.a)
// console.log(this.a instanceof Abc)
}
}
它应该给出 true
和 false
https://stackblitz.com/edit/angular-jfargi?file=src/app/app.component.ts
原文由 user944513 发布,翻译遵循 CC BY-SA 4.0 许可协议
接口在运行时被擦除,因此在任何运行时调用中都不会出现接口的痕迹。您可以使用类而不是接口(类在运行时存在并遵守
instanceof
或者您可以进行结构检查以查看
Abc
的属性在运行时是否存在于对象中: