javascript - js数组中 删除重复对象 有什么快速的方法
巴扎黑
巴扎黑 2017-04-10 15:10:05
[JavaScript讨论组]

var term_gpa = [ { year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2013-2014', term: '2' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' },
{ year: '2014-2015', term: '1' } ]

比如上面那个要变成
var term_gpa = [{ year: '2013-2014', term: '1' },
{ year: '2013-2014', term: '2' },
{ year: '2014-2015', term: '1' } ]

巴扎黑
巴扎黑

全部回复(4)
PHP中文网
var unique = {};
term_gpa.forEach(function(gpa){ unique[ JSON.stringify(gpa) ] = gpa });
term_gpa = Object.keys(unique).map(function(u){return JSON.parse(u) }); 
黄舟

最快的方法是利用字典,遍历一次你的数组,将year和term设为数组的键:
var myArr = []; for(var item in term_gpa){ myArr[':'+item.year +':'+item.term] = item; };
OK, myArr就是你要的去重的数组了。

PHP中文网

对象其实不能相互比较的,因为占据的内存不同。不过可以采用其他的方法来做,你看看我写的这个吧数组去重

PHP中文网

array.filter() 新增的数组方法

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号