数组求和
var arr = [1,2,3,4]
var sum = arr.reduce(function(prev,elem,i,arr){
return prev + elem
},0)
统计一个字符串中每种字符出现的次数
var str = "helloWord"
var str1 = str.split("")
var result = str1.reduce(function(prev,elem){
if(prev[elem] === undefined){
prev[elem] = 1
}else{
prev[elem]++
}
return prev
},{})
数组中去掉重复对象
var arr = [
{name: "a",id: 1},
{name: "b",id: 2},
{name: "c",id: 3},
{name: "d",id: 1},
{name: "e",id: 3},
{name: "f",id: 14},
]
let hash = {}
arr = arr.reduce((preVal,curVal)=>{
return [curVal.id]? "" : hash[curVal.id] = true && preVal.push(curVal)
},[])