【发布时间】:2018-12-05 02:15:09
【问题描述】:
我想遍历一个对象数组并在 typescript 中访问该迭代对象的属性值。
在 c# 中执行此操作,只需通过数组执行一次 foreach 即可。
在打字稿中,这似乎有点不同。我们可以做一个 foreach,但我们无权访问“完整”对象,如何做到这一点?
@Input() gridDefinitions: GridColumnDefinition[]
public test() {
for (var def **in** this.gridDefinitions){
var test = <GridColumnDefinition>this.selectedObject;
let castedtype = <GridColumnDefinition>def; // this gives an error
}
}
更新:我刚刚遇到了解决方案。问题在于如何遍历集合。当使用 of 而不是 in 时,我们可以访问迭代对象。见TypeScript for-in statement
【问题讨论】:
-
迭代后想要达到的效果,可以直接使用
map and flat -
不使用“var”,使用“let”
-
@Eliseo "let" 似乎是另一种声明变量的方式,但我找不到解决先前问题的方法。
标签: arrays angular typescript loops