按ID从数组中获取行

时间:2018-05-16 16:07:45

标签: arrays angular typescript multidimensional-array

我有一个名为IOfficeInfo的自定义数组,如下所示:



export class IOfficeInfo {
        OfficeID: number;
        TypeOfOffice: string;
        DateSubmitted: string;
        OfficeName: string;
}




我想创建一个相同类型的空白数组,然后将一个办公室插入到该空白数组中,其中OfficeID等于现有数字。我的问题是,我似乎无法弄清楚如何从数据阵列中选择一个办公室并将其推入空白阵列。

一旦我开始工作,我将按时间顺序从数据数组中插入剩余的办公室。我知道这是一个奇怪的要求,但我不是那个制作它们的人。我必须这样做,因为我被告知。

以下是我处理sortOfficeInfo函数的方法。在调试时,我可以看到传递给方法的数据。 data.sort工作正常。再次,我的问题是获得一个办公室并将其推入空白数组(returnarray)。具体来说,topOffice未定义。



  sortOfficeInfo(data: IOfficeInfo[]): IOfficeInfo[] {
    // The first item has to be the enrollment that the user clicked.
    // The remaining enrollments are dupes that are required to be ordered by date submitted
    let returnarray: IOfficeInfo[] = [];
    let topoffice: IOfficeInfo = data.find(x => x.OfficeID === this.OfficeID);

    data.sort((a: any, b: any) => {
      if (a.DateSubmitted < b.DateSubmitted) {
        return -1;
      } else if (a.DateSubmitted > b.DateSubmitted) {
        return 1;
      } else {
        return 0;
      }
    });
    debugger;
    returnarray.push(topoffice);
    return returnarray;
  }
&#13;
&#13;
&#13;

我的问题: 如何通过OfficeID选择行以及如何将其推入returnarray?

1 个答案:

答案 0 :(得分:0)

geeze ... 问题是OfficeID是一个字符串,它必须是一个数字。