在JavaScript中使用for循环的奇怪行为

时间:2011-02-04 21:07:20

标签: javascript image for-loop

我有这个图像表有两列和20行。执行此for循环时,除了第一行(仅显示左侧的第一个图像)之外,所有行都正常工作。这真的很奇怪;执行的顺序有问题吗?

var image= [];
var rows=5;        
for (var i = 0; i < test.length; i++) {
    var avatar = test[i].image; // The profile image

    if(i % 2 === 0){
        image[i]= Titanium.UI.createImageView({
            top:row,
            image:avatar
            align:right
            });
        win.add(image[i]);
        //trying to increase the image
        row =row+200;
    } else if(i % 2 === 1) {
        image[i]= Titanium.UI.createImageView({
            top:row,
            image:avatar
            align:left
            });
        win.add(image[i]);
    }
}

1 个答案:

答案 0 :(得分:2)

i = 0,i%2 = 0,显示图像(假设是正确的),行+ = 200;

i = 1,i%2 = 1,显示图像(左侧),行保持相同

i = 2,i%2 = 0,显示图像(右侧),行+ = 200

0%2 = 0,表示右侧图像,然后进入下一行。只需要在你增加行的位置和循环的哪一边开始。