1

我正在尝试将数组数组转换为对象数组,我正在使用 Angular 和 TypeScript,这是代码:

look(data: [][]){
    
    const found = data.flatMap( element => element ).find(element => element == this.codigo );
    console.log(found);

    const dataobj = data.map(function(row){
      return {
        a: row[0],
        b: row[1],
        c: row[2],
        d: row[3],
        e: row[4],
        f: row[5],
        g: row[6],
      }
    });
    console.log(dataobj);
    console.log(this.datos);
    

  }

我收到此错误:src/app/hojaexcel/hojaexcel.component.ts:61:16 - 错误 TS2493:长度为“0”的元组类型“[]”在索引“0”处没有元素。

61 a: 行 [0], ~

4

1 回答 1

1

该类型[]是元组类型而不是数组类型。你可以有[number][number, string]等等......这些都是元组类型。[]将是一个没有元素的元组。[][]是一个没有元素的元组的元组,字面意思是[[]].

您需要声明一个类型以使其成为数组的数组。我不确定data应该是什么,但让我们假设它是一个数字:

look(data: number[][]) {
于 2021-03-09T16:08:24.223 回答