let channelTabList = [
{1: 'aaa'},
{2: 'bbb'},
{3: 'ccc'},
{4: 'ddd'}
]
let lists = channelTabList.reduce((prev,cur)=>{
return {...prev,...cur}
})
lists = {1: "aaa", 2: "bbb", 3: "ccc", 4: "ddd"}
方法二:
let newArr = arr.reduce((prev, current) => {
for (let key in current) {
prev[key] = current[key]
}
return prev
}, {})
扩展二位数组变一维数组
let arr = [[0, 1], [2, 3], [4,[5,6,7]]]
const newArr = function(arr){
return arr.reduce((pre,cur)=>pre.concat(Array.isArray(cur)?newArr(cur):cur),[])
}
console.log(newArr(arr)); //[0, 1, 2, 3, 4, 5, 6, 7]
属性值求和
var result = [
{subject: 'math',score: 10},
{subject: 'chinese',score: 20},
{subject: 'english',score: 30 }
];
var sum = result.reduce(function(prev, cur) { return cur.score + prev;}, 0);
console.log(sum) //60