reduce方法简单实现数组中对象去重

js数组的reduce方法,接收一个函数(必须)和指定的初始值(非必须)作为参数,函数有三个参数,分别为初始值,当前项,当前数组,进行累加或者累积操作,初始值为每次累加或者累计后的结果
注意:在ie9一下的浏览器中,并不支持该方法 !
语法:arr.reduce(fn(pre,cur,arr){},[initialValue])

例子:

var arr = [
  {value:'苹果',id:1},
  {value:'香蕉',id:2},
  {value:'苹果',id:3}
]
var hash = {}; arr = arr.reduce((item, next) =>{ hash[next.value] ? '' : hash[next.value] = true && item.push(next); return item }, [])

 

posted @ 2018-09-26 10:17  放晴的天空  阅读(1569)  评论(1编辑  收藏  举报