// 兼容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)) }