arrays - 另一个数组中的数组

标签 arrays angular typescript rest api

我有一个数组对象(形成 API),eeach 对象包含一个数组,但我无法访问子数组:

结构:

Billing [date, totalPrice, {productList[product1,product2]}, ..., ..., {[...,...,...]},....,....,..., {[...,...,...,]}]

我的模型是:

export  class Billing {
  private _productsList: Array<InvoiceLine>;
  private _Date: Date;
  private _totalPrice: number;
}

然后我初始化了一个数组:

public AllBilling: Billing[] = []; 

然后,当我尝试从 Blling Array 获取数据时,它就可以工作了。

for ( i = 0; i < this.AllBilling.length; i++){
     console.log(this.AllBilling);
}

但是当我尝试从数组中获取 productsList 时,它不起作用。

for ( i = 0; i < this.Belling.length; i++){
     console.log(this.Belling[i]);

        for ( j = 0; j < this.AllBilling[i].productsList.length; i++){
          console.log(this.AllBilling[i].productsList[j]); }
}

它给了我以下错误:

ERROR TypeError: Cannot read property 'length' of undefined

引用productsList.length

enter image description here

最佳答案

这段代码中有几个错误

  1. 您需要重复的是AllBilling,而不是BellingBelling 指的是一个类,而不是一个值

  2. _productsList 不是 productsList

  3. 如果您想访问productsList,则应该是 公共(public),而不是私有(private)

这就是它不起作用的原因。 希望这有帮助

关于arrays - 另一个数组中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54745920/

相关文章:

java - 如何在 Java 中检查二维数组是否占对角线

java - 将循环中的数据保存到数组

javascript - 给定两个数组,我如何遍历一个数组并插入第二个数组的重复元素?

java - 检查元素是否已存在于 Java 数组中

reactjs - 错误 : Before running a Saga, 您必须使用 applyMiddleware 在 Store 上安装 Saga 中间件

angular - 如何将索引传递给组件 angular 2

Angular HttpClient post 请求类型

angular - 如何在 ngrx/Store reducer 中使用其他 Angular2 服务?

javascript - 使用 "as"进行 TypeScript 转换

html - 如何在不运行整个应用程序的情况下设计/测试 Angular 组件?