js封装常用方法

1、数组按createTime排序
function sortByCreateTime(list: any[]) {
   return list.sort(function(a, b) {
      return new Date(a.createTime).getTime() - new 
      Date(b.createTime).getTime();
   });
}

2、数组去重

 // es5
 function uniq(arr) {
    if (Array.isArray(arr)) {
       return arr.filter((item, index, array) => array.indexOf(item) === index);
    }
 }
 
 // es6
 function uniq(arr) {
    return [...new Set(arr)]
}

 3、对象数组取交集

/**
* 取对象数组交集
* @param {Array} list1 数组
* @param {Array} list2 数组
* @param {String} param 属性名称
*/
getIntersectList (list1, list2, param) {
    let list1Params = list1.map(obj => obj[param])
    list2.filter(obj => {
        return list1Params.indexOf(obj[param]) !== -1
    })
}

 4、按数组属性排序

/**
* 按数组属性排序
* @param {Array} list 数组
* @param {String} param 属性名称
*/
sortByParam (list, param) { return list.sort(function(a, b) { return a[param] - b[param] })
},

 

 

 

 

posted @ 2019-11-09 09:07  顾非白  阅读(593)  评论(0编辑  收藏  举报