Andrew Hedges のテストに関する私のコメントも参照してください ...
単純な反復、導入した最適化、および配列内の要素がすべてのループでテストされる逆の do/while を比較するテストを実行しようとしました。
残念なことに、私がテストした 3 つのブラウザーの結果は大きく異なっていましたが、最適化された単純な反復がすべての中で最速でした!-)
テスト:
500,000 個の要素を持つ配列は、実際のテストの外部で作成され、反復ごとに特定の配列要素の値が明らかになります。
試運転10回。
IE6:
結果:
シンプル: 984,922,937,984,891,907,906,891,906,906
平均: 923.40 ミリ秒。
最適化: 766,766,844,797,750,750,765,765,766,766
平均: 773.50 ミリ秒。
逆 do/while: 3375,1328,1516,1344,1375,1406,1688,1344,1297,1265
平均: 1593.80 ミリ秒。(特に厄介な結果の 1 つに注意してください)
オペラ 9.52:
結果:
シンプル: 344,343,344,359,343,359,344,359,359,359
平均: 351.30 ミリ秒。
最適化: 281,297,297,297,297,281,281,297,281,281
平均: 289.00 ミリ秒
逆 do/while: 391,407,391,391,500,407,407,406,406,406
平均: 411.20 ミリ秒。
ファイアフォックス 3.0.1:
結果:
シンプル: 278,251,259,245,243,242,259,246,247,256
平均: 252.60 ミリ秒。
最適化: 267,222,223,226,223,230,221,231,224,230
平均: 229.70 ミリ秒。
逆 do/while: 414,381,389,383,388,389,381,387,400,379
平均: 389.10 ミリ秒。