私はforループを持っていて、ループ内には別のforループがあり、breakの条件があります。問題は、forループが最上位レベルのループを壊すときにも同じことです。だから、私はどのようにループのためのサブを壊すメインのループのJavascriptを壊すことなくですか?どのように私はJavaScriptのmain forループを壊さずにforループを壊すのですか?
0
A
答えて
1
は、このように、break文を使用します。最後に、s
が5回の全体のループの繰り返しではなく、1の結果が含まれていることを
var i, j, s = "";
for(i = 0; i < 5; ++i) {
s += "\ni = " + i;
for(j = 0; j < 999; ++j) {
s += "\nj = " + j;
if(j === 1) {
break;
}
}
}
お知らせ。
ので、余分な見当違いセミコロン、かもしれないあなたの問題の1つの原因:上記の場合
var i, j, s;
s = "";
for(i = 0; i < 5; ++i) {
s += "\ni = " + i;
for(j = 0; j < 10; ++j); {
s += "\nj = " + j;
if(j === 10) {
break;
}
}
}
、forループの内側には、実際には空ですが、インデントは、それは次のものが含まれているかのように見えますブロック(実際には "外側"ループの直接の子)です。これは、明らかな「外側」ループが最初の反復で壊れることを意味します。
もう一つの原因は、このように、平等対割り当ての誤用につながるタイプミスかもしれません。このような状況で
var i, j, s;
s = "";
for(i = 0; i < 5; ++i) {
s += "\ni = " + i;
for(j = 0; j < 10; ++j) {
s += "\nj = " + j;
if(i = 5) {
break;
}
}
}
、破るために内部ループが発生する条件は、外側のループ変数にループには外側のループを終了させる値が割り当てられています。割り当ては真実であるため、ブレークは常にヒットします。
さらに別の原因は、javascriptの変数範囲に関する誤解の可能性があります。他の言語では、このような何かを行うことができるかもしれない:ここ
var i, s = "";
for(i = 0; i < 5; ++i) {
s += "\nouter = " + i;
if(true) {
var i;
for(i = 0; i < 999; ++i) {
s += "\ninner = " + i;
if(i === 10) {
break;
}
}
}
}
トラブルはJavaScriptでは、変数はそれらがvar
で宣言された関数にスコープされていることです。 (または、関数の外にある場合、またはvar
なしで使用されている場合はグローバル)。これは、内側ループのi
が実際には外側ループと同じi
であることを意味します。
関連する問題
- 1. forループを壊すC++
- 2. forループを壊すようにユーザーに促す方法は?
- 3. forループ内でのブートストラップの崩壊php
- 4. "for"ループの後にJavaScriptコードが壊れる
- 5. どのようにしてForループと通信するForループ
- 6. PythonとPygameで "for"ループを壊す方法は?
- 7. ブルートフォースでパスワードを壊す:ネストしたforループ
- 8. forループのJavascriptで
- 9. 「For」ループのコードはどのように実行されますか? Javascript
- 10. Javascript XMLHttpRequest for forループ
- 11. リファクタリングfor javascript 'for'ループ
- 12. リストに追加すると、なぜforループが壊れるのですか? (Python)
- 13. forループ内のループ? - Javascript
- 14. ループを壊さずにwhileループで何かを一度だけ実行する
- 15. 私のループを壊す方法は?
- 16. 最初のスパイダーの後にforループが壊れないようにcmdlineを作成するには?
- 17. forループでブレークはどのように機能しますか?
- 18. forループを拡張forループに変換するにはどうすればよいですか?
- 19. JavaScript forループのヘルプ
- 20. forループのJavascript getElementById
- 21. forループJavaScriptのパラメータ
- 22. どのようにasync.js各ループを壊す?
- 23. FORループ内のOracle FORループ
- 24. 配列のJavascript for-ofループとulのfor-ofループに値を渡す
- 25. forループ内の配列に値をプッシュする(別のforループ内)JavaScript
- 26. どのようにインデックス変数をfor ... forループ内のループに配置するか?
- 27. Javascript |成功した後に壊れる可能性のあるforループを行う他の方法は?
- 28. forループ出力とforループ出力を結合するにはどうすればよいですか?
- 29. どのように崩壊するか、その他、For、Foreachなどの節?
- 30. Pouchdb forループでどのようにクエリできますか?
Javascriptでは、内部ループが壊れたときに外部ループが壊れることはありません。あなたのコードがこれをやっているなら、何か他のことが起こっています。 – slebetman
この質問は、投票された質問の重複ではありません - これは、期待される振る舞いがそうでなければ両方のループが壊れる理由です。 OPはコードサンプルを提供する必要があります。 –