web-dev-qa-db-ja.com

条件が満たされるまでJavaScriptループ

条件が満たされるまで無期限にループしようとしています...これは正しいですか?ないようです。

    var set = false;
    while(set !== true) {
        var check = searchArray(checkResult, number);
        if(check === false) {
            grid.Push(number);
            set = true;
        } 
    }
7
Funktion

基本的に、このパターンで無限ループを作成し、ループ内の任意の場所にステートメント break でブレーク条件を追加できます。

while (true) {
    // ...
    if (breakCondition) {            
        break;
    } 
}
19
Nina Scholz

コードは、searchArrayの結果がnot falseである間、およびfalseになるまでループします。したがって、そのような動作を実現したい場合はコードが正しく、それ以外の場合は正しくありません。

0
MobileX

では、これについて見ていきましょう。関数searcharray()がtrueを返すまでコードをループさせますか?

最初に、コードは変数「set」を作成し、それをfalseに設定します

次に、setがtrueに等しくない間(ここでは三重の等しいを使用することをお勧めします)、次のコードを実行します。

変数「check」を作成し、searcharrayが返すものに設定します。

Searcharrayがfalseを返す場合は、配列グリッドの最後に新しいエントリとして数値を追加し、「set」をtrueに設定します。

次に、再びループします。searcharrayがtrueを返した場合、setがまだfalseであるため、再びループします。searcharrayがfalseを返した場合、再度ループせずに最後までスキップします。

これはあなたがそれを起こそうと思った方法ですか?

0
Iblob