有点冗长的标题,但我会尝试解释我想要做什么。基本上,我有许多想要组合成一个数组的数组。问题是,我需要遍历子数组中的项目并一次将它们添加 1 并保持顺序。最终目标是我想显示回页的数据。我在下面有一个简单的例子,我将用它来尝试传达我的意思。这不是按字母顺序排序,即在底部示例中h不应该在i之前。
所以在我的例子中,我知道我想要 3 页的结果。第一页应该有 4 项,第二页 4 项,第三页只有 1 项。
我可以自己进行最后的分页,因为我将在它“混合”的末尾有一个所有内部项目的数组,但我不知道如何循环遍历我的数组并按照我的需要添加它们。
我已经预先获得了 page 变量,但我不确定如何构建循环。我想我基本上需要遍历每个子数组并 pop() 第一项关闭,然后遍历下一项, pop() 第一项等等。但是在某个地方我需要检查每个子数组中剩下多少项目。
例如,如果我只有数组“one”,理论上我会有 2 页,第一页包含 a、c、e、i,第二页只有 k,这显然很简单,因为我只检查唯一数组的长度。
但是如果我在另一个数组中添加“第三个” [1,2,3,4,5] 那么我希望混合数组是 ['a','b',1,'c','d',2 ...ETC]; 这些数组中的每一个在理论上都可以有不同的长度,所以我显然会跳过一个空值。
var one = ['a','c','e','i','k'];
var two = ['b','d','f','h'];
var all = [one,two];
var pagecount = 3;
var mix = [];
for(var i = 0; i< all.length; i++){
var area = all[i];
}
// End result should be mix = ['a','b','c','d','e','f','i','h','k'];
我已经尽我所能地表达了这一点,但我正在努力弄清楚如何自己解释这一点!不幸的是,在现实世界中,我无法控制数据数组的数据/大小。
有任何问题或不清楚的地方,请发表评论。