,如果我有一個數組myArray
這我循環通過:JavaScript數組索引測試
for(var i=0;i<myArray.length;i++) {
if(myArray[i] == myArray[i+1])
//do something
}
顯然,myArray[i+1]
將無法在最後一次迭代。缺少測試,如果i == (myArray.length - 1)
,是否有一個乾淨的方法,不要在這個if語句失敗,只是它的計算結果爲false(如果myArray[i+1]
超出界限)?
哦,我知道我可能會更好過保持變量指向前值,並在每次迭代中只是測試,如果當前值等於存儲先前的值。但我仍然想知道如何做到這一點,如問題所示。 – bba 2010-09-21 14:35:40
*「顯然,myArray [i + 1]在最後一次迭代中將失敗。」*嗯,是和否,取決於你的意思是「失敗」。它不會拋出異常,但幾乎肯定不是你想要的。它會將'myArray [i]'與'undefined'進行比較。無論如何,最好先停止,如KennyTM的答案所示。 – 2010-09-21 14:36:50