ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript では「options = options || {}」は何をしますか?

JavaScript では「options = options || {}」は何をしますか?

DDD
DDDオリジナル
2024-11-03 12:38:31549ブラウズ

What does

JavaScript の「options = options || {}」を理解する

「options = options || {}」のようなコード スニペットが表示された場合;" とすると、その機能について疑問が生じます。このスニペットは、関数の引数のデフォルト値を設定するためによく使用されます。

この式の中核は、論理 OR (||) 演算子にあります。この演算子はオペランドを順番に評価し、最初に見つかった真の値を返すか、すべてが偽の場合は最後の値を返します。この場合、「オプション」が最初に評価されます。 「options」が false (未定義、null、0、「」など) の場合、false と評価され、式は「options || {}」になります。

「{}」は JavaScript です。空のオブジェクトを表すオブジェクト リテラル。したがって、「options」が最初に定義されていない場合、この式は空のオブジェクトを「options」変数に割り当てます。 "options" が既に存在する場合、"options" が真の値であるため、評価は停止します。

このパターンは、関数の引数が未定義として渡されたときに、デフォルト値で初期化するために使用されます。例:

function test(options) {
  options = options || {};
}

この関数が引数なしで呼び出された場合、「オプション」には空のオブジェクトが割り当てられます。 「オプション」が明示的に未定義として渡された場合、デフォルト値も取られます。

ES6 Update

ES6 ではデフォルトのパラメータ値が導入され、この式はデフォルトを設定するために廃止されました。 。 ES6 では、次の構文を使用してデフォルト値を設定できます:

function test(options = {}) {
  //...
}

この構文では、「options」が未定義として渡されるか、明示的に未定義に設定されている場合、空のオブジェクトのデフォルト値が使用されます。 。 || とは異なります。演算子パターン、他の偽の値はデフォルト値の使用をトリガーしません。

以上がJavaScript では「options = options || {}」は何をしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。