js 数组对象去重

list: [{
						id: '1',
						name: '11'
					},
					{
						id: '2',
						name: '22'
					},
					{
						id: '4',
						name: '44'
					},
					{
						id: '4',
						name: '44'
					},
					{
						id: '5',
						name: '55'
					},
					{
						id: '6',
						name: '66'
					},
				]

 

方法一:javascript

 采用对象访问属性的方法,判断属性值是否存在,若是不存在就添加。(利用对象访问属性的方法,判断对象中是否存在key)java

var result  = [];
				var obj = {};
				for (var i = 0; i < this.list.length; i ++) {
					if(!obj[this.list[i].id]){
						result.push(this.list[i]);
						obj[this.list[i].id] = true;
					}
				}
				console.log('数组对象去重:',result);

 

 方法二:数组

采用数组中的reduce方法,遍历数组,也是经过对象访问属性的方法(利用reduce方法遍历数组,reduce第一个参数是遍历须要执行的函数,第二个参数是item的初始值)函数

var obj = {};
     this.list = this.list.reduce(function(item, next) {
       obj[next.id] ? '' : obj[next.id] = true && item.push(next);
       return item;
    }, []);
console.log('数组对象去重:',this.list);
相关文章
相关标签/搜索