素肌にサスペンダー

個人的な備忘と日記

【JavaScript】??(Null合体演算子)と||(論理OR演算子)

どちらも動く場合などプロジェクトで若干適当に使ってしまった感があったので、確認した。

??(Null合体演算子

  • 左側のオペランドnull または undefined の場合にのみ右側のオペランドを返します。
  • 左側のオペランドnullundefined 以外の値(たとえそれが 0''(空文字列)、false などのfalsy値であっても)の場合、その値をそのまま返します。

||(論理OR演算子

  • 左側のオペランドnullundefined0''(空文字列)、falseNaN などのいずれかのfalsy値の場合に右側のオペランドを返します。
  • 左側のオペランドが真偽値として「真」と見なされる場合(falsy値でない場合)、その値をそのまま返します。