Lea*_*day 5 typescript angular
我想检查以下对象是否具有该属性forums以及该属性值是否为true.
{forums: true, pages: true, photos: true, videos: true}
Run Code Online (Sandbox Code Playgroud)
我正在使用 TypeScript Angular 5。
我现在这样做并且工作正常。
let item = 'forums';
if ( this.itemsmodel.hasOwnProperty(item) ) {
//Which is true.
if (this.itemsmodel[item]) {
item = item;
} else {
item = 'pages';
}
}
Run Code Online (Sandbox Code Playgroud)
是否有 Angular 方式或 TypeScript 方式?
最短的方法,这将默认检查两个:
if(this.itemsmodel[item])
Run Code Online (Sandbox Code Playgroud)
首先它会尝试获取this.itemsmodel,item如果没有则返回undefined,如果找到则返回值,
相同但很长的路要走:
if(this.itemsmodel[item] && this.itemsmodel[item] === true)
Run Code Online (Sandbox Code Playgroud)
这里首先将检查键是否存在,第二个将检查值
因此,您可以将代码转换为这样的:
let item = 'forums';
if (this.itemsmodel[item]) {
item = item;
} else {
item = 'pages';
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17924 次 |
| 最近记录: |