json数据如下:
希望将其转换为如下数组:
要获得第一个属性,可以使用.reduce
返回表示在对象中找到的属性的keys
列表 要获得第二个,需要使用.map
两次遍历数组中的每个项,每次都返回该项中定义的keys
的值贴上代码:
const data = [{empnum:"10",fullname:"john doe",dateofhire:"2000-01-01:12:00:00", lastupdate:"-02-02"},{empnum:"20",fullname:"john smith",dateofhire:"1990-02-01:12:00:00", lastupdate:"-01-02"},{empnum:"30",fullname:"john wayne",dateofhire:"-01-03:12:00:00", lastupdate:"-02-01"},]// 要获得第一个属性,可以使用.reduce返回表示在对象中找到的属性的keys列表// get properties from objectsconst props = data.reduce((acc,item) => [...new Set([...acc, ...Object.keys(item)])], []);// 要获得第二个,需要使用.map两次遍历数组中的每个项,每次都返回该项中定义的keys的值// for each item, return array of values for the properties aboveconst records = data.map(item =>props.map(key => item[key]));console.log(props);console.log(records);