数组拆分成多个数组 js数组移除制定对象( 二 )


原理:利用对象的键名不可重复的特点
let obj = {}
arr.filter(item => obj.hasOwnProperty(typeof itemitem) ? false : (obj[typeof itemitem] = true))
5. Array.reduceArray.includes reduce() 方法:接收一个函数作为累加器 , 数组中的每个值从左到右开始计算 , 最终计算为一个值 。
语法:arr.reduce(function(total, currValue, currIndex, arr), initValue)

reduce() 对于空数组是不会执行回调函数的 。
total:必需 。初始值, 或者计算结束后的返回值
currValue:必需 。当前元素
currIndex:可选 。当前元素的索引
arr :可选 。当前数组对象 。
initValue:可选 。累加器初始值
一个空数组调用reduce()方法且沒有提供初始值 , 会报错 。一个空数组调用reduce()方法且提供了初始值 , 将直接返回该初始值 , 不會调用 callback 函数 。非空数组调用reduce()提供初始值 , 则total将会等于初始值 , 且 currValue从第一个元素开始;若沒有提供初始值 , 则 total 会等于的第一个元素值 , 且 currValue将会从第二个元素开始 。let newArr = arr.reduce((accu, cur) => {
return accu.includes(cur) ? accu : accu.conca

推荐阅读