0

これは関連しています。ループ構造をテストしたいのですが。私が通常行うことは、次のような簡単なステートメントに入れられます

i++

ループの中。私はこれを行います。賢いインタープリターは空のブロックを実行しないのでしょうか。例えば。

for(var i = 0; i < 10; i++) {
}

ループには何もないため、まったくループしない可能性があります。

だから私は通常次のようなことをします:

for(var i = 0; i < 10; i++) {
    i++;
}

しかし、これはi++ステートメントとループ構造をテストしますが、これは望ましくありません。

4

2 に答える 2

1

答えは次のとおりです。最新の JavaScript エンジンでは、多くの最適化が行われています。1 つの例は、最終結果に影響を与えないコードをスキップするデッド コードの削除です。

IE9 のこの機能について、非常に興味深い論争がありました: http://digitizor.com/2010/11/17/internet-explorer-9-caught-cheating-in-sunspider-benchmark/

しかし、とにかく空のブロックを何度も実行したいのはなぜでしょうか?

JavaScript インタープリターを単純に待機させたい場合は、次の回答を試してください:
sleep() の JavaScript バージョンは何ですか?
Javascript でスリープ - アクション間の遅延

于 2013-07-10T15:21:32.030 に答える