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] })
},