tongtong-utils
Version:
String类
40 lines (37 loc) • 1.02 kB
JavaScript
;
// 数组去重
Array.uniq = function (arr, field) {
if (!arr || !arr.length) {
return arr;
}
var newArr = [];
arr.forEach(function (item) {
if (!newArr.some(function (newItem) {
return field ? newItem[field] === item[field] : newItem === item;
})) {
newArr.push(item);
}
});
return newArr;
};
// 数组交集, 第一个参数可以是要比较的属性名
Array.intersect = function () {
var _arguments = arguments;
if (arguments.length < 2) {
return arguments[0];
}
var list = arguments[0];
var field = null;
if (typeof arguments[0] == "string") {
field = arguments[0];
list = arguments[1];
}
for (var i = field ? 2 : 1; i < arguments.length; i++) {
list = list.filter(function (a) {
return _arguments[i].some(function (b) {
return field ? a[field] == b[field] : a == b;
});
});
}
return list;
};