0

Jeremy Keith 著の「DOM Scripting - JavaScript を使用した Web デザインとドキュメント オブジェクト モデル」という本を完成させようとしています。

以下に'do...while'例を示します。

var count = 1;
do {
    console.log(count);
    count++;
} while (count < 11);

本の中で彼は、do...whileループの例を見ると、次のように完全に定式化できると述べています。

initialize;
while (condition) {
    statements;
    increment;
}

確かに、これは実際には間違いであり、これは実際にはループの定式化であり、whileループではありませんdo...while

正誤表もチェックして、これが本の誤りであるかどうかを確認しましたが、それについての言及はありません。

whileこれはループではなくループの定式化であると言うのは正しいdo...whileですか? 参照できる信頼できる ECMAScript ドキュメントはありますか?

4

1 に答える 1

0

あなたが上で言及した本では、do-whileは次のように説明されています:

    As with the if statement, it is possible that the statements contained within the curly
    braces of a while loop may never be executed. If the condition evaluates as false on the
    first loop, then the code won’t be executed even once.
    There are times when you will want the code contained within a loop to be executed at
    least once. In this case, it’s best to use a do loop. This is the syntax for a do loop:
    do {
    statements;
    } while (condition);
    This is very similar to the syntax for a regular while loop, but with a subtle difference. Even
    if the condition evaluates as false on the very first loop, the statements contained within
    the curly braces will still be executed once.

したがって、このセクションを読んだ後、著者が「do-while」と「while」が同じであるとは決して言わないことが明らかになります。彼の言うことは、whileを使って何をしていても、do-whileを使って同じことができるということです。ただし、しばらくすると、最初の反復自体で条件がfalseと評価された場合、ループに入ることができなくなります。ただし、do-whileでは、構文の反復が後で指定されるため、少なくとも1回はループに入ります。それが彼の意味するところです。

于 2013-01-16T12:22:28.933 に答える