🕌

論理演算子

2024/11/30に公開

論理演算子

今回はなんとなくわかったつもりでいた論理演算子について記載します。
といってもあくまで一瞬「?」となるやつだけの抜粋です。
今はGTPとかに「これ解説して」って言えばどんな挙動をするかすぐにわかりますが、コードを見てわかった方が良いですよね。(かくゆ私もうる覚えなので、戒めとして記載するのだが…)

&& (AND)

  • 左側の値が true の場合に、右側の値を返します。
  • 条件が複数ある場合のチェックによく使います。
const value = a && b; // a が truthy なら b を返す

|| (OR)

  • 左側の値が false の場合に、右側の値を返します。
  • デフォルト値を設定するときによく使います。
const value = a || b; // a が falsy なら b を返す

! (NOT)

  • 値を反転させます(truefalse に、falsetrue に)。
const isFalse = !true; // false

!! (二重否定)

  • 値を確実に boolean 型に変換します。
const isTruthy = !!value; // value が truthy なら true, falsy なら false

!== (厳密な不等価)

  • 値と型の両方を比較して等しくなければ true
1 !== '1'; // true

三項演算子 (condition ? value1 : value2)

  • 条件によって値を切り替えます。
const result = a > b ? '大きい' : '小さい';

?? (Nullish Coalescing Operator)

  • null または undefined の場合にデフォルト値を設定します。
const value = a ?? 'default'; // a が null または undefined の場合 'default' を返す

?. (Optional Chaining)

  • オブジェクトのプロパティに安全にアクセスします。
const value = obj?.property; // obj が null または undefined の場合 undefined を返す

+ (正数に変換)

  • 数値型に変換します。
const num = +'123'; // 123 (string から number に変換)

(負数に変換)

  • 数値型に変換しつつ負数にします。
const num = -'123'; // -123

& (ビット AND)

  • 各ビットを比較し、両方が 1 の場合に 1 を返します。

| (ビット OR)

  • 各ビットを比較し、どちらかが 1 の場合に 1 を返します。

typeof

  • 値の型を取得します。
console.log(typeof 123); // 'number'
console.log(typeof 'text'); // 'string'

instanceof

  • オブジェクトが特定のクラスのインスタンスかをチェックします。
console.log([] instanceof Array); // true

最後に

ご覧いただきありがとうございます!
この投稿が誰かの役に立てば幸いです。

Discussion