实现形式
1、取数据列表中第一条作为表头数据,再遍历删除不是表头的固定属性,后果赋值给一个空对象;
2、把解决好的数据遍历 key 名 puah 进表头配置数组中,当时在写一个 key 名所对应的中文名办法返回中文名。

数据格式

/*表格数据*/const dataList = [    {        name: "李小龙",        age: 24,        city: "深圳",        gender: "男",        education: "本科",        hobby: "武术"    },    {        name: "黄飞鸿",        age: 25,        city: "深圳",        gender: "男",        education: "本科",        hobby: "武术"    },    {        name: "陈真",        age: 26,        city: "深圳",        gender: "男",        education: "本科",        hobby: "武术"    },    {        name: "霍元甲",        age: 26,        city: "深圳",        gender: "男",        education: "本科",        hobby: "武术"    },]/*表头配置*/const headConfig = {    名字: "name",    年龄: "age",    性别: "gender"}

实现形式1:删除不是表头配置的属性

function extractData(data, config) {    const formHead = Object.values(config)    data.forEach((item, index) => {        Object.keys(item).forEach(item2 => {            if (!formHead.includes(item2)) delete data[index][item2];        })    })    return data;}

实现形式2:匹配表头配置的属性 push 进新数组返回

function extractData(data, config) {    const formHead = Object.values(config)    const arr = [],obj={};    data.forEach((item, index) => {        Object.entries(item).forEach(item2 => {            if (formHead.includes(item2[0])) obj[item2[0]] = item2[1]        })        arr.push(obj)    })    return arr;}

匹配对象中指定属性

function mateData(data,config){ const arr = [] for (let [key, value] of Object.entries(config)) {      if (data[key]) {        arr.push({          value: data[key],          name: value        });      }    }    return arr;  }}