Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
do...while 文は、指定された文を、テスト条件が偽に評価されるまで実行するループを作成します。条件は文を実行した後に評価されます。結果として、指定された文は少なくとも 1 回は実行されます。
少なくとも 1 回は実行され、条件が真と評価されるたびに再実行される文。ブロック文を使用して複数の文を実行することができます。
conditionループを通過した後に毎回評価される式。もしこの条件が真に評価された場合は、statement は再度実行されます。条件が偽に評価された場合は、制御が do...while に続く文へ渡ります。
他のループ文と同様に、statement の中でフロー制御文を使用することができます。
do...while 文の構文では末尾にセミコロンが要求されますが、セミコロンがないことで構文が不正な状態になる場合、自動セミコロン挿入処理によって自動的に挿入されることがあります。
次の例では、 do...while ループを少なくとも 1 回は実行し、 i が 5 より小さいという条件を満たさなくなるまで反復します。
この文は常に一度だけ実行されるため、do...while (false) は文自体を実行するのと同じです。これは C 系言語でよく使われる手法であり、break を使用して分岐ロジックを早期に抜け出すことができるようになります。
JavaScript では、break をつけてラベル付きブロック文を使用するなど、いくつかの代替手段があります。
または関数を使用する方法もあります。
場合によっては、次のように、代入を条件として使用することが理にかなうことがあります。
場合によっては、条件として代入を使用することは意味があります。しかし、その場合、正しい方法と間違った方法があります。while のドキュメントでは、代入を条件として使用の節で、知っておくべき、そして従うべき一般的な良い実践例を示しています。
| ECMAScript® 2027 Language Specification # sec-do-while-statement |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2026年4月12日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.