0
我有這個圖像表,有兩列和20行。當執行這個for循環時,除了第一行,只顯示左邊的第一個圖像,所有的行都可以正常工作。這真的很奇怪,執行順序有問題嗎?JavaScript中循環的怪異行爲
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]);
}
}
如果可以更改爲一個簡單的else語句,您還可以。 i%2將始終爲0或1. – Joel 2011-02-04 21:16:08
1. if-else語句的兩個分支均包含6行等效代碼(?!)將代碼置於if-else語句之外。 2.不要在for循環中聲明變量。它表明該變量被多次聲明,事實並非如此。在頂部聲明變量。 – 2011-02-04 21:21:25