1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptのOR(||)変数割り当ての説明

2022-03-25 07:30:19

質問

このJavaScriptのスニペットがあれば...

var a;
var b = null;
var c = undefined;
var d = 4;
var e = 'five';

var f = a || b || c || d || e;

alert(f); // 4

どなたか、このテクニックの名称を説明していただけませんか(私の最良の推測はこの質問のタイトルにあります!)?また、どのように/なぜそれが正確に動作するのでしょうか?

私の理解では、変数 f は、nullでもundefinedでもない値を持つ最初の変数の最も近い値(左から右へ)が割り当てられますが、私はこのテクニックについてあまり参考資料を見つけることができず、よく使われているのを見てきました。

また、このテクニックはJavaScriptに特有のものなのでしょうか?PHPで同じようなことをすると、次のようになりますね。 f の値ではなく、真のブール値を持つ。 d そのものです。

解決方法は?

参照 ショートサーキット評価 を説明します。これはこれらの演算子を実装する一般的な方法であり、JavaScriptに固有のものではありません。