我有一个像这样的对象数组 - [{first},{second},{third},{forth},{fifth},{sixth}}
如何遍历数组,并获取(对于每个循环)该数组的下三个元素?
例如,对于第一个循环,我将获得三个引用{first}
,{second}
和{third}
的变量,对于第二个循环,我将获得引用{的变量{1}},{forth}
和{fifth}
...
等等...
答案 0 :(得分:3)
for (i = 0; i < arr.length; i += 3) {
var a = arr[i];
var b = arr[i + 1];
var c = arr[i + 2];
...
}
答案 1 :(得分:2)
这可能有效:
var array = ['one', 'two', 'three', 'four', 'five', 'six', 'seven'];
for(i = 0; i < array.length; i+=3){
var first = array[i];
var second = (array[i+1]) ? array[i+1] : null;
var third = (array[i+2]) ? array[i+2] : null;
}
如果数组中不存在索引,则变量将为null
。
Fiddle
答案 2 :(得分:1)
接受答案的另一个版本是:
var i = 0, len = arr.length;
while (i < len) {
var a = arr[i++];
var b = arr[i++];
var c = arr[i++];
...
}
如果数组是稀疏的,或者长度不是3的偶数倍,则可能需要在读取它们的值之前测试元素是否存在,并在递增计数器时将其考虑在内。
答案 3 :(得分:0)
试试这个:
var i, j;
for (i = 0; i < 4; i += 1) {
// Loop
}
for (j = i; j < arr.length; j += 1) {
// Second loop
}
答案 4 :(得分:0)
在i之后为元素添加1,为之后的元素添加2。
var ary1,ary2,ary3;
for(var i=0;i<size-3;i+=3){
ary1 = myary[i];
ary2 = myary[i+1];
ary3 = myary[i+2];
}
答案 5 :(得分:0)
这是非常基本的
var array; // your array (let's pretend it's already populated)
for (i = 0; i < array.length - 3; i += 3) {
element1 = array[i];
element2 = array[i+1];
element3 = array[i+2];
}
我没有处理你没有数组中三个对象的多个对象的情况,但这应该让你开始。