jQuery的阵列中的多个项目
问题描述:
我想要得到的项目列表中的一个页面,并将其推到一个数组:jQuery的阵列中的多个项目
$('#softwareUpdates article').each(function(index) {
productList.push({
class: $(this).attr("class"),
text: $(this).attr("su_title")
});
});
不过,我想避免多个项目,所以当我目前的检查productList的阵列我有:
Item 1, Item1, Item 2, Item 3, Item 3, Item 4
我想什么有是:
Item 1, Item 2, Item 3, Item 4
答
我把下面的代码从http://hackingon.net/post/Handy-Javascript-array-Extensions-e28093-distinct().aspx。
Array.prototype.distinct = function() {
var derivedArray = [];
for (var i = 0; i < this.length; i += 1) {
if (!derivedArray.contains(this[i])) {
derivedArray.push(this[i])
}
}
return derivedArray;
};
也有相当于.NET的Linq的JavaScript库。任何这些应该工作。这里有一个:http://jsinq.codeplex.com/
+0
这工作,但我的数组充满了对象,有没有办法实现与对象相同? – paulcripps 2012-08-01 19:04:12
+0
这就是为什么我建议用于JavaScript的Linq克隆。他们让你从对象中挑选出值,然后在它们上面应用独特的值。 – 2012-08-01 21:24:33
试试这个:http://*.com/questions/2822962/jquery-remove-duplicate-elements – 2012-08-01 15:08:41
你可以尝试先使用'.filter()'。 – NicoSantangelo 2012-08-01 15:09:27