因爲我發現這個片段,我經常使用它遍歷數組:使用「for(i = 0; elem = array [i]; i ++)」來迭代數組有什麼風險?
for (i = 0; elem = array[i]; i++) doStuff(elem);
這顯然是非常錯誤的,如果array
可以包含任何計算結果爲假(''
,undefined
,null
, 0
,false
)。但是如果您確定情況並非如此,那麼是否有人會看到使用此方法的另一個風險?
我在問這個問題,因爲它似乎不是很常用,雖然它對我來說似乎非常棒,所以我開始考慮我有一個明顯的缺點。
那麼,明顯的缺點是你提到的那個。你可以保證只有真理元素是非常罕見的。 – JJJ 2012-08-11 20:05:01
說到JavaScript,人們永遠不能太確定。 – BoltClock 2012-08-11 20:19:19
由於歌曲就像你自己的個人代碼一樣,並不重要,但是如果它有機會被其他人使用,那麼這是一個難以發現錯誤的機會。即使你自己的代碼,如果你改變了一些......所以我不認爲你應該使用它。它可能會咬你。 – some 2012-08-11 20:20:16