// 兼容ie8 不会改变原数组 function deWeight(arr) { for (var i = 0; i < arr.length - 1; i++) { for (var j = i + 1; j < arr.length; j++) { if (arr[i].name== arr[j].name) { // name为需要去重字段 arr.splice(j, 1); //因为数组长度减小1,所以直接 j++ 会漏掉一个元素,所以要 j-- j--; } } } return arr }
// 兼容ie8 会改变原数组 function deWeight() { for (var i = 0; i < arr.length - 1; i++) { for (var j = i + 1; j < arr.length; j++) { if (arr[i].name == arr[j].name) { arr.splice(j, 1); //因为数组长度减小1,所以直接 j++ 会漏掉一个元素,所以要 j-- j--; } } } return arr; }
// 不兼容ie8 es6 reduce arr = arr.reduce(function(item, next) { obj[next.key] ? '' : obj[next.key] = true && item.push(next); return item; }, []);
// es6 set去重 function unique10 (arr) { return Array.from(new Set(arr)) }