JavaScript 演算子と論理演算子の包括的な理解
前の言葉
論理演算子は、オペランドに対してブール演算を実行し、関係演算子と一緒によく使用されます。論理演算子は、複数の関係式 式を結合して、より複雑な式を形成します。論理演算子は、論理 NOT '!'、論理 AND '&&'、論理 OR '||' の 3 種類に分けられます。この記事では、これら 3 つの論理演算子を紹介します
論理 NOT
論理 NOT演算子 は、感嘆符 (!) は、ECMAScript の任意の値に適用できることを意味します。値のデータ型に関係なく、この演算子はブール値を返します。論理 NOT 演算子は、まずオペランドをブール値に変換し、次にそれを否定します。論理 NOT 演算子の
ブール型への変換タイプは、最終的に結果が得られる点を除いて、Boolean() 変換関数と同じです。反転している。そして、2 つの論理 NOT 演算子を同時に使用すると、Boolean() 変換関数の動作を実際にシミュレートします
console.log(!!undefined);//false console.log(!!null);//false console.log(!!0);//false console.log(!!-0);//false console.log(!!NaN);//false console.log(!!'');//false console.log(!!false);//false
console.log(!!{});//true console.log(!![]);//true console.log(!!new Boolean(false));//true console.log(!!false);//false console.log(!!new Boolean(null));//true console.log(!!null);//false
論理 NOT 演算子は、ループを制御するためによく使用されます
//Boolean 变量(bFound)用于记录检索是否成功。找到问题中的数据项时,bFound 将被设置为true,!bFound将等于false,意味着运行将跳出while循环 var bFound = false; var i = 0; while (!bFound) { if (aValue[i] == vSearchValues) { bFound = true; } else { i++; } }
論理 AND
論理 AND 演算子
は 2 つのアンパサンド (&&) で表され、結果は 2 つのオペランドを持ち、両方のオペランドが true の場合にのみ true を返し、それ以外の場合は false を返します
//逻辑与(&&)的真值表 第一个操作数 第二个操作数 结果 true true true true false false false true false false false alse
論理 AND 演算は次のように行うことができます。ブール値だけでなく、あらゆるタイプのオペランドに適用されます。オペランドの 1 つがブール値ではない場合、論理 AND 演算は必ずしもブール値を返すとは限りません
論理 AND 演算は、最初のオペランドで結果を決定できる場合、2 番目のオペランドは結果を決定しません。
論理 AND の場合、2 番目のオペランドの値が何であっても、最初のオペランドが false の場合、最初のオペランドが true の場合は最初のオペランドが返されます。が true または false で、2 番目のオペランドが true または false の場合、2 番目のオペランドが返されます。式
//除了false、undefined、null、+0、-0、NaN、''这7个假值,其余都是真值 console.log('t' && ''); //因为't'是真值,所以返回'' console.log('t' && 'f'); //因为't'是真值,所以返回'f' console.log('t' && 1 + 2); //因为't'是真值,所以返回3 console.log('' && 'f'); //因为''是假值,所以返回'' console.log('' && ''); //因为''是假值,所以返回''
の値は、論理積 (&&) および論理和の優先度よりも高くなります。 (||) なので、括弧を追加せずに同様の式を直接記述することができます
var i = 1; var result = (true && i++); console.log(result,i);//因为true是真值,所以执行i++,i是2,result是1 var i = 1; var result = (false && i++); console.log(result,i);//因为false是假值,所以不执行i++,i是1,result是false
console.log(true && 'foo' && '' && 4 && 'foo' && true);// ''
if(a+1==2 && b+2==3){ //Todo }
論理OR
は2本の縦棒(||)で構成されており、オペランドが2つあることを意味し、両方のオペランドがfalseの場合のみ結果はfalseを返し、それ以外の場合はtrueを返します
if (a == b) { doSomething(); } // 等价于 (a == b) && doSomething();
同様に、論理 OR 演算はブール値だけでなく、あらゆるタイプのオペランドにも適用できます。オペランドの 1 つがブール値ではない場合、論理 OR 演算は必ずしもブール値を返すとは限りません
論理 OR 演算は、最初のオペランドで結果を決定できる場合は、2 番目のオペランドも結果を決定します。値 論理和の場合、2 番目のオペランドの値に関係なく、最初のオペランドが true の場合、最初のオペランドが false の場合、最初のオペランドが返されます。結果の true または false が 2 番目のオペランドの true または false と同じ場合、2 番目のオペランドが返されます//若没有给参数a传值,则a为默认的undefined,是假值,所以不执行a(),防止报错,如果给参数a传值,则执行函数a()
function fn(a){
if(a){
a();
}
}
//等价于
function fn(a){
a && a();
}
//逻辑或(||)的真值表 第一个操作数 第二个操作数 结果 true true true true false true false true true false false false
同様に、論理 OR 演算子も複数の組み合わせで使用でき、最初のオペランドを返しますブール値 true と評価される式の値
console.log('t' || '');//因为't'是真值,所以返回"t" console.log('t' || 'f');//因为't'是真值,所以返回"t" console.log('' || 'f');//因为''是假值,所以返回"f" console.log('' || '');//因为''是假值,所以返回""
論理 OR 演算子は、変数のデフォルト値を設定するためによく使用されます
var i = 1; var result = (true || i++); console.log(result,i);//因为true是真值,所以不执行i++,result是true,i是1 var i = 1; var result = (false || i++); console.log(result,i);//因为false是假值,所以执行i++,i是2,result是1
-->
以上がJavaScript 演算子と論理演算子の包括的な理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











WebSocketとJavaScript:リアルタイム監視システムを実現するためのキーテクノロジー はじめに: インターネット技術の急速な発展に伴い、リアルタイム監視システムは様々な分野で広く利用されています。リアルタイム監視を実現するための重要なテクノロジーの 1 つは、WebSocket と JavaScript の組み合わせです。この記事では、リアルタイム監視システムにおける WebSocket と JavaScript のアプリケーションを紹介し、コード例を示し、その実装原理を詳しく説明します。 1.WebSocketテクノロジー

JavaScript と WebSocket: 効率的なリアルタイム天気予報システムの構築 はじめに: 今日、天気予報の精度は日常生活と意思決定にとって非常に重要です。テクノロジーの発展に伴い、リアルタイムで気象データを取得することで、より正確で信頼性の高い天気予報を提供できるようになりました。この記事では、JavaScript と WebSocket テクノロジを使用して効率的なリアルタイム天気予報システムを構築する方法を学びます。この記事では、具体的なコード例を通じて実装プロセスを説明します。私たちは

Pythonはそのシンプルで読みやすい構文から幅広い分野で広く使われています。プログラミングの効率を向上させ、コードがどのように機能するかを深く理解するためには、Python 構文の基本構造をマスターすることが重要です。この目的を達成するために、この記事では、Python 構文のさまざまな側面を詳しく説明した包括的なマインド マップを提供します。変数とデータ型 変数は、Python でデータを保存するために使用されるコンテナです。マインド マップには、整数、浮動小数点数、文字列、ブール値、リストなどの一般的な Python データ型が表示されます。各データ型には独自の特性と操作方法があります。演算子 演算子は、データ型に対してさまざまな操作を実行するために使用されます。マインド マップは、算術演算子、比率など、Python のさまざまな演算子の種類をカバーしています。

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

+= 演算子は、左オペランドの値を右オペランドの値に加算し、その結果を左オペランドに割り当てるために使用されます。これは数値型に適しており、左オペランドは書き込み可能である必要があります。

JavaScript で HTTP ステータス コードを取得する方法の紹介: フロントエンド開発では、バックエンド インターフェイスとの対話を処理する必要があることが多く、HTTP ステータス コードはその非常に重要な部分です。 HTTP ステータス コードを理解して取得すると、インターフェイスから返されたデータをより適切に処理できるようになります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法と、具体的なコード例を紹介します。 1. HTTP ステータス コードとは何ですか? HTTP ステータス コードとは、ブラウザがサーバーへのリクエストを開始したときに、サービスが

Python 演算子の概要 演算子は、2 つ以上のオペランド間の演算を実行するために使用される特殊な記号またはキーワードです。 Python には、基本的な数学演算から複雑なデータ操作まで、幅広い用途をカバーするさまざまな演算子が用意されています。数学演算子 数学演算子は、一般的な数学演算を実行するために使用されます。演算子の演算例 + 加算 a + b - 減算 a-b * 乗算 a * b / 除算 a / b % モジュロ演算 (剰余を取る) a % b ** べき乗演算 a ** b // 整数除算 (剰余) a//b 論理演算子 論理演算子は、ブール値を連結し、条件を評価するために使用されます。これらには、演算子の演算例と、論理演算と aandbor 論理演算、または aorbnot 論理演算の not not 比較演算が含まれます。

Go 言語では、演算子は優先順位の高いものから低いものの順に評価されます。一般的な演算子の優先順位: 1. 括弧: () (最高の優先順位、演算の順序を強制するために使用)、2. 単項演算子、3. 乗算演算子、4. 加法演算子、5. シフト演算子、6. ビット演算子; 7. 比較演算子; 8. 論理演算子; 9. 条件演算子(三項演算子); 10. 代入演算子など
