【发布时间】:2013-08-19 13:18:56
【问题描述】:
我有很多对象试图从中过滤掉重复项。当一个对象有一个属性 IMAGEURL 存在于另一个对象中时,我想忽略这个对象并继续前进。
我为此使用nodeJS,所以如果有一个库可以让我更轻松地使用它,请告诉我。
在检查数组中的字符串值之前,我做过类似的实现,比如:
var arr = ['foo', 'bar'];
if(arr.indexOf('foo') == -1){
arr.push('foo')
}
但这不适用于对象,据我所知。我在这里有什么选择?更简单地说:
var obj1 = {IMAGEURL: 'http://whatever.com/1'};
var obj2 = {IMAGEURL: 'http://whatever.com/2'};
var obj3 = {IMAGEURL: 'http://whatever.com/1'};
var arr = [obj1, obj2, obj3];
var uniqueArr = [];
for (var i = 0; i<arr.length; i++){
// For all the iterations of 'uniqueArr', if uniqueArr[interation].IMAGEURL == arr[i].IMAGEURL, don't add arr[i] to uniqueArr
}
我该怎么做?
【问题讨论】:
标签: javascript arrays object for-loop