相亲网与做网站,聊天网站备案,企业风首页中文官网模板,百度精准搜索需求#xff1a;一个用户列表数据#xff0c;如果对应列表数据大于10个#xff0c;就每10个保存到二维数组#xff0c;后面不足10个的依然放在二维数组尾部 用处#xff1a;模拟分页#xff0c;或者局部刷新 在线DEMO#xff1a;戳这里 var obj[{list:[{a:1…需求一个用户列表数据如果对应列表数据大于10个就每10个保存到二维数组后面不足10个的依然放在二维数组尾部 用处模拟分页或者局部刷新 在线DEMO戳这里 var obj[{list:[{a:1},{a:2},{a:3},{a:4},{a:5},{a:6},{a:7},{a:8},{a:9}]},{list:[{a:1},{a:2},{a:3},{a:4},{a:5},{a:6},{a:7},{a:8},{a:9},{a:10},{a:11},{a:12},{a:13},{a:14},{a:15},{a:16},{a:17},{a:18},{a:19},{a:20},{a:21}]},{list:[{a:1},{a:2},{a:3},{a:4},{a:5},{a:6},{a:7},{a:8},{a:9},{a:10},{a:11},{a:12},{a:13},{a:14},{a:15},{a:16},{a:17},{a:18},{a:19},{a:20},{a:21},{a:22},{a:23},{a:24},{a:25},{a:26},{a:27},{a:28},{a:29},{a:30},{a:31}]},{list:[{a:1},{a:2},{a:3},{a:4},{a:5},{a:6},{a:7},{a:8},{a:9},{a:10},{a:11},{a:12},{a:13},{a:14},{a:15},{a:16},{a:17},{a:18},{a:19},{a:20},{a:21},{a:22},{a:23},{a:24},{a:25}]},{list:[{a:1},{a:2},{a:3},{a:4},{a:5},{a:6},{a:7},{a:8},{a:9},{a:10},{a:11},{a:12},{a:13},{a:14},{a:15},{a:16},{a:17},{a:18},{a:19},{a:20},{a:21},{a:22},{a:23},{a:24},{a:25}]}];//每个list的长度可能为0无上限 //如果对应的list.length10,就把对应的list每10个放在二维数组内不足10个放在二维数组的尾部//例如第三个有31个把第三个list替换为// [// [{a:1},{a:2}..{a:10}],// [{a:11},{a:12}...{a:20}],// [{a:21}..{30}],[{a:31}]// ]////该如何一次性获得所有的二维数组function resetDate(arr,num){//1整个数组的长度var lengarr.length;for(var i0;ileng;i){//2 每个列表var innerListarr[i].list;// console.log(arr);//3 每个列表的个数即lenthvar innerLengthinnerList.length;//如果大于10个if(innerLength!0innerLengthnum){//如果大于10个的二维数组外层数组的长度max,需要上取整var outerMaxLenMath.ceil(innerLength/num);// 定义在每个对象上的二维数组外层// arr[i].outerArray(outerMaxLen);arr[i].outer[];var sliceNum 0, resIndex 0;// console.log(result)while (sliceNum innerLength) {arr[i].outer[resIndex] innerList.slice(sliceNum, sliceNum num);}// 需要用到arr.slice(start,end);console.log(arr[i].outer);}}}resetDate(obj,10);// 法二、小于10个有点BUG(表示没看懂)来自巴神
function adapter(data){function _splice(list,i){i i || 1;list.push(list.splice(0,10));list.length10 ? _splice(list,i):list.push(list.splice(0,list.length-i));}data.forEach(function(v){_splice(v.list);});
}adapter(obj);
console.log(obj); 法二的跟新版本小于10已结正常过多数据的话未测 function adapter(data){function _splice(list,i){i i || 1;list.push(list.splice(0,10));list.length10 ? _splice(list,i):(i1 list.push(list.splice(0,list.length-i)));}data.forEach(function(v){_splice(v.list);});
}adapter(obj);
console.log(obj); 转载于:https://www.cnblogs.com/-walker/p/6879888.html