LoginSignup
0
0

More than 5 years have passed since last update.

jqueryメモ⑤ 制御文

Posted at

論理演算子

!: 条件の真偽値を反転する(条件がtrueならflase, falseの場合はtrue)。 !条件

主な制御文

if文

if( 条件1 ){
  条件1がtrue(真)の場合のみif文内の処理を実行する
} else if( 条件2 ){
  条件1がfalse(偽)で、条件2がtrue(真)の場合はここのコードを実行
} else{
  条件1と条件2ががfalse(偽)の場合はここのコードを実行
}

switch文
「ある一つのデータと複数のデータとを比較して処理を分岐する。」際に使用できる。
If文でもいいが、switch文は条件を省略できるので、コードの内容の可読性が高くなります。
Break文を省略してもエラーにはなりませんが、break文を書き忘れると該当のcase以降のすべての処理が実行されてしまい、意図した結果にならなくなる。

for文
for (初期化; 条件; 変更){
繰り返す処理
}

①初期化で「条件」と使用するカウント用の変数などを初期化する
②「条件」を評価し、trueの場合は③へ、flaseの場合はfor文の処理を終了する
③上記の「繰り返す」処理を実行する
④カウント用の変数などを変更し②にもどる

例:数値が格納されている配列内の値を全て足したい


var a = [1,2,3,4,5,6];
var b = 0;

for(var i = 0; len = a.length; i < len; i++){
  b + = a[i];
}
//結果は21

また以下の2種類の文を指定できます。
continue文:処理を途中で止めて、「変更」の処理にスキップする
break文:for文の処理を強制的に終了する

上記の文を指定することで、任意のタイミングでfor文の処理を制御できるようになります。
「配列内の値が偶数の場合は加算し、5の倍数の場合は処理を終了する」という条件を加えると下記のようになる。


var a = [1,2,3,4,5,6];
var b = 0;

for(var i = 0; len = a.length; i < len; i++){
  var num = a[I];


  if(num % 5 === 0){
    break;                break文が実行されると処理の途中でもfor文は終了ここでは6回処理が実行されるように書いてあるが、「5で終了する
 }else if(num % 2 ===1){
    continue;            他の処理が残っていても処理がfor文の先頭に戻るつまり奇数の時は加算処理がスキップされる
}
b += num;
}

なおjQueryではeach()メソッドを使用することでも繰り返し処理を実行することができる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0