- ベストアンサー
JavaScriptの解説サイトでわからないところがあったので教えてください1
ただいまJavaScriptの基本中の基本の段階を、 解説サイトを見ながら勉強しています。 その中でわからないことがあったので教えてください。 以下、サイト文の引用 ************************************************ 例えば「0から10までの偶数の和を、変数a求めたい」場合。 a=0; for(i=0; i<11; i++) { if(i%2==1)continue; a+=i; } alert(a); と記述します。 まず変数aを0で初期化します。 続いてforループを開始します。 最初に変数iを0で初期化します。 次にループの条件判定を行い、iが11未満ならばループを続行します。 さらにループ内でif文の条件分岐をして、iを2で割った余りが0以外の場合はcontinue命令が実行され、 ループの先頭に戻ります。 もしiを2で割った余りが0の場合は、a+=i;の処理が実行されて変数aに変数iの値が加算されます。 ************************************************ 上のif文について、解説では 「iを2で割った余りが0以外の場合はcontinue命令が実行」 「iを2で割った余りが0の場合は、a+=i;の処理が実行されて変数aに変数iの値が加算」 となっていますが、この意味がよくわかりません。 i%2==1 というのは「iを2で割った余りが1と等しい」なのに、 なぜ0以外の場合、0の場合という"0"で判断しているのでしょうか? それと、 「iを2で割った余りが1の場合、 continue処理をして、変数aはa+iの値となる」 ・・・というこちらの勝手な解釈のどこが間違っていますか? 初心者なのでくだらない質問かもしれませんがよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- BlueRay
- ベストアンサー率45% (204/453)
- GuruGuru22
- ベストアンサー率51% (177/346)
お礼
continue処理というのは、この場合、 条件に当てはまれば、上のfor文の処理を続け、 条件に当てはまらなければ、次のa+=iを実行する ということですね。 よくわかる説明、どうもありがとうございました<(_ _)>