js 数组去除重复项
2012-10-09 13:28
288 查看
转自司超云,连接地址忘记了。。
//去除已选检查项数组中重复项
var compare = compare || {};
compare.array = compare.array || {};
compare.array.unique = function (source, compareFn) {
var len = source.length,
result = source.slice(0),
i, datum;
if ('function' != typeof compareFn) {
compareFn = function (item1, item2) {
return item1 === item2;
};
}
// 从后往前双重循环比较
// 如果两个元素相同,删除后一个
while (--len > 0) {
datum = result[len];
i = len;
while (i--) {
if (compareFn(datum, result[i])) {
result.splice(len, 1);
break;
}
}
}
return result;
};
//去除已选检查项数组中重复项
var compare = compare || {};
compare.array = compare.array || {};
compare.array.unique = function (source, compareFn) {
var len = source.length,
result = source.slice(0),
i, datum;
if ('function' != typeof compareFn) {
compareFn = function (item1, item2) {
return item1 === item2;
};
}
// 从后往前双重循环比较
// 如果两个元素相同,删除后一个
while (--len > 0) {
datum = result[len];
i = len;
while (i--) {
if (compareFn(datum, result[i])) {
result.splice(len, 1);
break;
}
}
}
return result;
};