在工作中有时需要根据业务需要,将大量数据进行处理分成几个一组
// 例如要将下方数据进行处理
var stuCount = [{
"id": "1612321835288",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-14",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835289",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-15",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835290",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-16",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835291",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-17",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835292",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-18",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835293",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-19",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835294",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-20",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835295",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-21",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835296",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-22",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835297",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-23",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835298",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-24",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
},
{
"id": "1612321835299",
"libraryCode": "D",
"regionCode": "A",
"positionCode": "A20-4-25",
"inventoryStatus": "FREE",
"vin": null,
"positionType": "4N",
"paddingRegionCode": "A20-4",
"positionShowFlag": "HIDDEN",
"linePosition": 25
}
]
将上方数据进行处理可以这些写
// 方法定义
function resetDataFun(stuCount,col){
if (stuCount.length > 0){
var objList = new Object();
var arr = new Array();
// 看元数据可以切割多少组
var cow = stuCount.length / col == 0 ? stuCount.length / col : Math.ceil((stuCount.length / col));
console.log('行数',cow);
for (var i = 1; i <= cow; i++) {
var tempArr = [];
var temp;
// temp始终取 col * i 与 stuCount.length 中最小值
temp = col * i > stuCount.length ? stuCount.length : col * i
for (var j = col * (i - 1); j < temp; j++) {
tempArr.push(stuCount[j]);
}
var newObj = new Object();
newObj.data = tempArr
arr.push(newObj);
}
objList.data = arr;
this.resetData = objList;
console.log(objList);
}
}
// 方法调用
resetDataFun(stuCount,5)
结果展示:
每组多少数据可以通过传参进行动态设定,自行进行控制
欢迎访问我的网站 踏浪而行生活圈