迭代包含内容但长度为0的数组

时间:2017-10-07 17:22:49

标签: javascript arrays angular

我收到了一个电话号码和电话号码的电话列表。 我每次打电话都会做这样的事情:

const pos = '.' + this.number; // avoid arrays large as a mobile number but keeping the number for indexing

    if (typeof(this.list[pos]) === 'undefined') {
      this.list[pos] = 1;
    } else {
      this.list[pos] = this.list[pos] + 1;
    }

所以我可以得到多少次我称这个数字很容易就像this.list[number]那样。

当我想迭代这个数组时会出现问题:

<div *ngFor="let calls of callsListProvider.list">{{calls}}</div>

数组的长度始终为0,因为我没有推送内容。

我不想使用对象。这是否可以迭代并获得数字(索引)?

1 个答案:

答案 0 :(得分:1)

如果this.listArray,其属性名称设置为索引以外的值,则可以使用for..in循环替换for..of循环。

&#13;
&#13;
let arr = [];
arr["a"] = 1;
arr["b"] = 2;

for (let prop of arr) {
  console.log("for..of loop", prop);
}

for (let prop in arr) {
  console.log("for..in loop", prop);
}
&#13;
&#13;
&#13;