将多个阵列推入一个正在形成二维阵列

时间:2016-06-01 16:57:04

标签: javascript arrays protractor angularjs-e2e

以下代码将allRows []的长度返回为3,因为它中有3个数组。我正在尝试构建一个最终数组allRows。



  getRows() {
    return this.element.all(by.css(".xyz")).getText();
  }

  getTotalRows() {
    const allRows = [];

    for (let i = 0; i < 3; i++) {
      allRows.push(this.getRows());
      this.scrollDown();
      this.waitToLoad();
    }
    return allRows;
  }
&#13;
&#13;
&#13;

实际上getRows()正在返回一个promises数组。我的代码更改后修复了问题

&#13;
&#13;
  getRows() {
    return this.pinnedRows.getText();
  }

  getTotalRows() {
    const defer = Promise.defer();
    let allRows = [];

    for (let i = 0; i < 3; i++) {
      this.getRows().then((rows) => {
        allRows = allRows.concat(rows);
        this.scrollDown();
        this.waitToLoad();
        if (i === 2) {
          defer.resolve(allRows);
        }
      });
    }
    return defer.promise;
  }
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

推送添加一个索引,你想要的是concat()