编辑代码

const render_data = [
    {
        name: "地名" ,
        data: ["北京" , "上海" , "广州" , "深圳"]
    } ,
    {
        name: "订单量" ,
        data: ["1" , "2" , "3" , "4"]
    } ,
    {
        name: "销售额" ,
        data: ["a" , "b" , "c" , "d"]
    }
] ;

let _count = 0 ;

const generateTableData = (render_data) => {
    const MAX_LENGTH = Math.max(...render_data.map(item=>item.data.length)) ;
    const FIELD_NAME_LIST = render_data.map(item=>item.name) ;
    const table_data = [] ;
    for (let i=0 ; i<MAX_LENGTH ; i++) {
        const tmp_obj = {
            key: i
        };
        FIELD_NAME_LIST.forEach((FIELD_NAME , f_i)=>{
            tmp_obj[FIELD_NAME] = render_data[f_i].data[i] ;
        }) ;
        table_data.push(tmp_obj) ;
    }
    return table_data ;
} ;

const generateTableData2 = (render_data) => {
    const MAX_LENGTH = Math.max(...render_data.map(item=>item.data.length)) ;
    const table_data = [] ;
    for (let {name , data} of render_data) {
        for (let i=0 ; i<MAX_LENGTH ; i++) {
            table_data[i] = {
                ...table_data[i] ,
                "key":i ,
                [name]: data[i]
            } ;
        }
    }
    return table_data ;
}

console.log(generateTableData2(render_data)) ;