array-js-util
Version:
javascript集合操作插件
56 lines (50 loc) • 1.26 kB
JavaScript
/**
* @Author: @guoxinglin
* @Date: 2022-12-07 9:13:44
* @LastEditTime: 2022-11-08 11:23:00
* @LastEditors: Please set LastEditors
* @Description:
**/
let arrayJsUtil = {
/**
* 集合去重
* @param {需要去重的集合} arr
* @param {判断两元素是否相同的函数} fun
* @returns
*/
distinctArry:function(arr,fun){
let newArr = [];
arr.forEach(item=>{
if(this.isInArray(newArr,item,fun) == 0){
newArr.push(item)
}
})
return newArr;
},
/**
* 判断对象是否在集合中
* @param {集合} arr
* @param {传入对象} curItem
* @param {判断元素是否相等的的函数} fun
* @returns
*/
isInArray:function(arr,curItem,fun){
let count = 0;
arr.forEach(item => {
let equa = fun(curItem,item);
if(equa){
count++
}
});
return count;
},
/**
* 过滤集合
* @param {集合} arr
* @param {过滤规则} fun
*/
filterArray:function(arr,fun){
return arr.filter(fun)
}
}
export default arrayJsUtil