ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript 論理演算子がブール値ではなくオブジェクトを返すのはどのような場合ですか?

JavaScript 論理演算子がブール値ではなくオブジェクトを返すのはどのような場合ですか?

Barbara Streisand
リリース: 2024-12-04 06:00:22
オリジナル
962 人が閲覧しました

When Do JavaScript Logical Operators Return Objects Instead of Booleans?

JavaScript の論理演算子: ブール結果を超えて

JavaScript では、'&&' (AND) や '|| などの論理演算子が使用されます。 ' (OR) 通常、ブール値の結果が返されますが、特定の状況では他のオブジェクトが返される場合があります。

その理由を理解するには、短絡評価の概念を理解することが重要です。 「&&」と「||」の両方は短絡演算子であり、論理結果が決定されると評価を停止することを意味します。

式 'X || ではY'、'X' が最初に評価されます。 「X」が「true」であると判定された場合、式はそれ以上の評価を行わずに「X」を返します。ここで「ショートサーキット」が登場します。一方、「X」が「false」の場合、「Y」が評価され、式は「Y」を返します。

同様に、「&&」は最初の「真実」の引数、または最後の "偽" 引数。

この問題は、JavaScript による真偽の処理に起因します。 JavaScript では、次の値は "false" とみなされます: 'false'、'0'、'-0'、''、'null'、'unknown'、'NaN'、および 'document.all'。

したがって、式が「false」として評価された場合、以前のバージョンの JavaScript のようにブール値「false」を返すのではなく、最新の実装では実際に評価された値を返します。 expression.

この動作は、質問で指定された式によって厳密なブール値ではなくオブジェクトが返される理由を説明しています。 「obj.fn()」または「obj._」が定義されている場合、それらは「false」とみなされる値に含まれないため、その式の結果が返されます。

以上がJavaScript 論理演算子がブール値ではなくオブジェクトを返すのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート