我需要将数组数组转换为对象数组

问题描述

我正在尝试将数组数组转换为对象数组,我正在使用 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], ~

解决方法

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

你需要声明一个类型,它是一个数组的数组。我不确定 data 应该是什么,但我们假设它是一个数字:

look(data: number[][]) {