JavaScript では、論理演算子は、ステートメントをより複雑なステートメントに接続する特別な記号です。論理演算子は、「否定」、「or」、「and」などの論理演算を表すために使用できます。JavaScript では、次のような論理演算子を使用できます。 3 つの論理演算子:「!」、「&&」、「||」。
このチュートリアルの動作環境: Windows 10 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
論理演算子は、日常のコミュニケーションで「and」、「or」、「unless」などの概念を表現するために使用されます。
論理演算子: 形式論理では、論理演算子または論理接続子はステートメントをより複雑なステートメントに接続します。
たとえば、「雨が降っている」と「私は家の中にいる」という 2 つの論理命題があるとします。それらは、「雨が降った、そして私は家にいました」、「雨は降らなかった」、または「雨が降ったら、私は家にいました」という複雑な命題に変えることができます。 2 つのステートメントから構成される新しいステートメントまたは命題は、複合ステートメントまたは複合命題と呼ばれます。
「AND」と「OR」に 2 つの異なる形式の演算子がある理由は、演算の優先順位が異なるためです。演算子はプログラム コード操作を実行するために使用され、複数のオペランド項目に対して操作を実行します。
JavaScript の論理演算子
まず、他のデータ型をブール型に変換するためのルールについて説明します:
null、未定義、0、NaN、空の文字列変換は false、その他は true に変換されます。
JavaScript には 3 つの論理演算子があります:
1. 否定!
最初にデータをブール値に変換し、次にそれを否定します。結果は true または false
<script type="text/javascript"> var a = [1,2,3]; var b = "hello"; var obj = new Object(); var d; console.log(!""); console.log(!d); console.log(!a); console.log(!b); console.log(!obj); </script>
2。論理 AND &&
js のロジックは他の言語と異なり、第 1 オペランドが true (または true に変換できる) の場合、計算結果は第 2 オペランドになります。第 1 オペランドが false の場合、結果は false (ショートサーキット)計算)、一部の特殊な値については、上記のルールは適用されません。
<script type="text/javascript"> var a = [1,2,3]; var b = "hello"; var obj = new Object(); var d; console.log(true && 10);//第一个操作数是true,结果是第二个操作,也就是10 console.log(false && b);//第一个操作数是false,结果flase console.log(100 && false);//第一个操作数是100,结果flase console.log(undefined && false);//第一个操作数是undefined,结果undefined console.log(NaN && false);//第一个操作数是NaN,结果NaN console.log(null && false);//第一个操作数是null,结果null console.log('' && false);//第一个操作数是空串,结果空串 console.log(0 && 100);//结果是0 console.log(5 && 100);//100 console.log(a && b);//hello console.log(obj && 200);//200 </script>
3. 論理和 ||
最初のオペランドが false でない場合、結果は次のようになります。最初のオペランド、それ以外の場合、結果は 2 番目のオペランドになります。最初のオペランドを true に変換できる場合、結果は最初のオペランド
<script type="text/javascript"> var a = [1,2,3]; var b = "hello"; var obj = new Object(); var d; console.log(true || 10);//第一个操作数是true,结果是第一个操作,也就是true console.log(false || b);//第一个操作数是false,结果是第二个操作数b console.log(100 || false);//第一个操作数是100,结果100 console.log(undefined || 9);//第一个操作数是undefined转false,结果9 console.log(NaN || false);//第一个操作数是NaN转false,结果第二个操作数 console.log(null || a);//第一个操作数是null转false,结果a console.log('' || false);//第一个操作数是空串转false,结果第二操作数 console.log(0 || 100);//结果是100 console.log(5 || 100);//5 console.log(a || b);//a console.log(obj || 200);//obj </script>
関連する推奨事項: JavaScript 学習チュートリアル
以上がJavaScriptの論理演算子の意味は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。