1、
//初始数据
var data = [
{
id: 1,
name: '111',
list: [
{ title: 'xxx', num: 11 },
{ title: 'xxx', num: 12 },
{ title: 'xxx', num: 13 },
{ title: 'xxx', num: 14 },
{ title: 'xxx', num: 15 },
{ title: 'xxx', num: 16 },
{ title: 'xxx', num: 17 },
{ title: 'xxx', num: 18 }
]
},
{
id: 2,
name: '222',
list: [
{ title: 'yyy', num: 21 },
{ title: 'yyy', num: 22 },
{ title: 'yyy', num: 23 },
{ title: 'yyy', num: 24 },
{ title: 'yyy', num: 25 },
{ title: 'yyy', num: 26 },
{ title: 'yyy', num: 27 },
{ title: 'yyy', num: 28 }
]
}
]
// 定义新数组并且将初始数据赋值给改数组
var arr = data
// 定义中间件数组
var reault = []
//循环第一层数组
for (var j = 0; j < data.length; j++) {
//中间件数组清空,否则数据会重复添加
reault = []
for (var i = 0; i < data[j].list.length; i += 3) {// 3个分一组
reault.push(data[j].list.slice(i, i + 3))
}
// 将arr子集中的list替换
arr[j].list = reault
}
console.log(arr)
打印结果
[
{
id: 1,
name: '111',
list: [
[
{ title: 'xxx', num: 11 },
{ title: 'xxx', num: 12 },
{ title: 'xxx', num: 13 }
],
[
{ title: 'xxx', num: 14 },
{ title: 'xxx', num: 15 },
{ title: 'xxx', num: 16 }
],
[
{ title: 'xxx', num: 17 },
{ title: 'xxx', num: 18 }
]
]
},
{
id: 2,
name: '222',
list: [
[
{ title: 'yyy', num: 21 },
{ title: 'yyy', num: 22 },
{ title: 'yyy', num: 23 }
],
[
{ title: 'yyy', num: 24 },
{ title: 'yyy', num: 25 },
{ title: 'yyy', num: 26 }
],
[
{ title: 'yyy', num: 27 },
{ title: 'yyy', num: 28 }
]
]
}
]
2、
const data = res.data.theme_list
for (let i = 0; i < data.length; i += 3) {
this.themeList.push(data.slice(i, i + 3))
}