js(es6)数组去重

// 利用set、reduce、filter去重

// Set
function getSetArr(arr) {
    return [...new Set(arr)]
}
console.log(getSetArr([1, 2, 3, 1, 3])) // [1, 2, 3]

 

// reduce
function getRedArr(arr) {
    	let arr1 = arr.reduce((ar, cur) => {
    		if (!ar.includes(cur)) {
	    		ar.push(cur)
	    	}
	    	return ar
    	}, [])
    	return arr1
}
console.log(getRedArr([1, 2, 4, 5, 1, 2])) // [1, 2, 4, 5]

  

// filter
function getFilArr(arr) {
    	let arr1 = arr.filter((item, index) => {
    		return arr.indexOf(item) === index
    	})
    	return arr1
}
console.log(getFilArr([1, 1, 1, 2])) // [1, 2]

  

posted @ 2019-12-10 17:22  zaijinyang  阅读(3004)  评论(0编辑  收藏  举报