2017-01-29 3 views
-1

私は何かをするル​​ープを作ろうとしています。そしてそれが終了すると、varをfalseに設定して次のループに移動します(またはループを終了してループを終了します)。コード:1つのループから別のループにどのようにジャンプできますか?

var loop = true; 

while (loop = true) 
{ 
    console.log("whatevers"); 
    loop = false; 
} 
while (loop = false) 
{ 
    console.log("meh"); 
    //continue endProgram; 
} 

ここで私は間違っていますか?

答えて

2

=は単なる割り当てです。==または===は比較用です。変数の代入は、代入後の式として評価されます(@Okaコメントを参照)。例えば:(loop = false =>false一方loop = true =>true)の代わり==又は===を使用する:

var loop = true; 

while (loop == true) 
{ 
    console.log("whatevers"); 
    loop = false; 
} 
while (loop == false) 
{ 
    console.log("meh"); 
    //continue endProgram; 
} 
+0

ああ、それは簡単に修正されました。ありがとうございました! – Zohan

+0

割り当て式は、LHS _after_ assignmentとして評価されます。彼らは必ずしも「真実」ではない。問題は 'while(loop = false)'は 'loop'がちょうど実行するので、ループが決して実行されないことを保証しているということです割り当てられ、「偽」と評価される。 – Oka

+0

@Okaありがとう、私はそれを知らなかった。一定。 –

0
Try this way 
------------------------------------------------------------------- 

var loop = true; 

while (loop) 
{ 
    console.log("whatevers"); 
    loop = false; 
} 
while (!loop) 
{ 
    console.log("meh"); 
    //continue endProgram; 
} 
0

一方(ループ)は、一方(ループ== TRUE)と同じである..しかし、ループ= trueは変数ループをtrueに設定したことを意味します。これを試してください:

var loop = true; 

while (loop) 
{ 
console.log("whatevers"); 
loop = false; 
} 
while (!loop) 
{ 
console.log("meh"); 
} 
関連する問題