2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

&& や || を使う条件分岐の理解と使用例。

Last updated at Posted at 2019-03-20

論理演算子の && と || で条件分岐を書きたいときの書き方を、感覚的に理解するためのメモ。
【前提知識】truthyfalsyについて。

#&&
意味: AND

xxx && /*処理*/ ;
// ↑↓
if ( xxx ) {
  /*処理*/
} else {
  return xxx ;
}

##解説

  • 通常のif文の代用。
  • ただし、elseの処理は自動的に return xxx ; になる
  • 左方が truthy なら、右方の処理をする。

##実際に使ってみる。

xxx && ooo ;

xxxtruthy なら…
→ 戻り値は ooo の値になる。

xxxfalsy なら…
→ 戻り値は xxx の値になる。

##こういう時に使える!

  • 左方がtrutyなら、右方の処理を実行したい時。
  • 左方が定義済みだったら右方の値を代入したいっていうとき。

#||
意味: OR

xxx || /*処理*/ ;
// ↑↓
if ( !xxx ) {
  /*処理*/
} else {
  return xxx ;
}

##解説

  • NOT( ! )を使用するif文の代用。
  • ただし、elseの処理は自動的に return xxx ; になる
  • 左方が falsyなら、右方の処理をする。

##実際に使ってみる。

xxx || ooo

xxxtruty なら…
→ 戻り値は xxx の値になる。

xxxfalsy なら…
→ 戻り値は ooo の値になる。

##こういう時に使える!

  • 左方が定義されていなかったら、右方の価を参照してくれる。左方が定義済みだったら、左方の値を参照してくれる。
    • いわゆる「初期値」というやつ。
    • strictモードを使ってるとき、Reactを書いてるときなど、未定義の値を参照するとエラーがでてしまう状況で使える。

#まとめ

  • if ↔ &&
  • もし○○なら ( or ○○が 真 なら) 、●●する。
  • else ↔ ||
  • もし○○じゃないなら ( or ○○が 偽 なら) 、■■する。
  • if ... else ↔ 三項演算子
  • もし○○なら ( or ○○が 真 なら) ●●、違ったら ( or ○○が 偽 なら) ■■する。

(三項演算子については本記事では説明していませんが、ググればすぐに分かると思います。)

2
3
2

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
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?