我正在玩 Typescript,我想知道如何正确实例化和声明多维数组。这是我的代码:
class Something {
private things: Thing[][];
constructor() {
things = [][]; ??? how instantiate object ???
for(var i: number = 0; i < 10; i++) {
this.things[i] = new Thing[]; ??? how instantiate 1st level ???
for(var j: number = 0; j< 10; j++) {
this.things[i][j] = new Thing(); ??? how instantiate 2nd lvl item ???
}
}
}
}
你能给我一些关于选定地点的提示吗?
原文由 Fka 发布,翻译遵循 CC BY-SA 4.0 许可协议
您只需要
[]
来实例化一个数组 - 无论其类型如何,这都是正确的。数组是数组类型的事实并不重要。同样的事情也适用于循环的第一级。它只是一个数组,而
[]
是一个新的空数组 - 工作完成。至于第二级,如果
Thing
是一个类,那么new Thing()
就可以了。否则,根据类型,您可能需要一个工厂函数或其他表达式来创建一个。