1、分片大小固定
function fixedSize(params = 700, fixedSize = 100) {
params = Number(params);
fixedSize = Number(fixedSize)
if (!params || !fixedSize) return '数据有误';
let arrayObjec = [],
start = 0;
for (let i = 0; i < params; i++) {
if (i - start == fixedSize) {
arrayObjec.push({
start: start,
end: i,
});
start = i + 1;
}
}
let len = arrayObjec.length;
if (arrayObjec[len - 1].end < params) arrayObjec.push({
start: arrayObjec[len - 1].end + 1,
end: params,
});
return arrayObjec;
}
console.log(fixedSize(27368, 1000));
// (28) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
2、分片次数固定
function fixedTimes(params = 700, fixedTimes = 7) {
params = Number(params);
fixedTimes = Number(fixedTimes)
if (!params || !fixedTimes) throw new Error('数据有误');
let arrayObjec = [],
val = Math.round(params / fixedTimes),
start = 0;
for (let i = 0; i < fixedTimes; i++) (arrayObjec.push({ start: start, end: start + val + 1 }), start = start + val);
arrayObjec[arrayObjec.length - 1].end = params;
return arrayObjec;
}
console.log(fixedTimes(27368, 24));
// (24) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)