1.分页:根据page取当前页的内容。
//分页
function pagination(page, pageSize, array) {
var pageCount = page * pageSize;
var pagepev = (page - 1) * pageSize;
let data= array.filter((item, index) => {
// console.log(item,index);
return index < pageCount && index >= pagepev
});
return data
}
2.搜索
function pagination(array) {
let result = array.filter((item) => {
//console.log(item);
let name= item.name.toLowerCase();
return name.indexOf(value) != -1 ;
});
return result;
}
3.排序
//二维数组排序
const orderBy = (arr, props, orders) =>
[...arr].sort((a, b) =>
props.reduce((acc, prop, i) => {
if (acc === 0) {
const [p1, p2] = orders && orders[i] === 'desc' ? [b[prop], a[prop]] : [a[prop], b[prop]];
acc = p1 > p2 ? 1 : p1 < p2 ? -1 : 0;
}
return acc;
}, 0)
);
//用法:
// const users = [
// { name: 'fred', age: 48 },
// { name: 'barney', age: 36 },
// { name: 'fred', age: 40 },
// { name: 'barney', age: 34 }
// ];
// orderBy(users, ['name', 'age'], ['asc', 'desc']); // [{name: 'barney', age: 36}, {name: 'barney', age: 34}, {name: 'fred', age: 48}, {name: 'fred', age: 40}]
// orderBy(users, ['name', 'age']); // [{name: 'barney', age: 34}, {name: 'barney', age: 36}, {name: 'fred', age: 40}, {name: 'fred', age: 48}]