検索
ホームページウェブフロントエンドjsチュートリアルjs 演算子の優先順位の比較と js 論理演算子の分析

この記事では、さまざまなカテゴリの演算子について詳しく説明し、その後、js 演算子の優先度について説明します。優先度は、演算子の計算された優先度レベルを指します。これについては、以下で詳しく説明します。

js で演算子を比較するには? JavaScript 言語の比較演算子は、主に 2 つのオペランドの値が等しいかどうか、またはサイズを比較するために使用されます。記事には参考価値があり、必要に応じて収集できます。

演算子の概要

JavaScript は、演算子とも呼ばれる、データ値を操作するための演算子のセットを提供します
演算子は、さまざまな関数または操作変数の数に従って分類できます

  • 算術演算子

  • 1 つの場合。または 2 つのオペランドが文字列型の場合、JavaScript は計算前に自動的に数値に変換します
2. 1 つまたは 2 つのオペランドが文字列型で、その中の文字が数値ではない場合、JavaScript は自動的に数値に変換します値を NaN の結果に変換します

3. すべてのオペランドが NaN で、結果が NaN になります
4. ブール値 false と true は計算のために 0 と 1 に変換されます

    1。両方のオペランドが数値の場合、加算を行います
  • 2. 文字列を加算する場合 - 文字列連結演算子(string string)

    3. ブール型を加算する場合 - ブール型変換 数値の加算演算を行います



1. 減算演算の前に、他の型を数値型に変換してから計算します
    2. 文字列を減算する場合 - 文字列型を変換します数値に対して減算演算を行います
  • 3. ブール型で減算演算を行う場合 -ブール型を数値に変換して減算計算を行います

剰余演算子



剰余演算子は2を計算するために使用されますオペランドを除算した後の剰余
    結果が正か負かは、最初のオペランドは正または負です (2 番目のオペランドとは関係ありません)
  •     console.log(100 % 3);//1
        console.log(8 % 4);//0
    
        console.log(100 % -3);//1
        console.log(8 % 4);//0
    
        console.log(-100 % 3);//-1
        console.log(-8 % 4);//0
    
        console.log(-100 % -3);//-1
        //与减法的情况保持一致
        console.log('卧龙学苑' % 2);//NaN

  • インクリメント演算子とデクリメント演算子


自動インクリメント演算子は、整数値を連続して +1 するために使用され、次のように分割されます。
    a. 前置型: 自動インクリメント演算子はオペランドの前に配置され、値を割り当てる前に 1 を追加します。
  • 前置自增运算符 - ++变量名

    b. 後置型: 自動インクリメント演算子はオペランドの後に配置されます。最初に値を割り当ててから、次に値を割り当てます。 add 1

    后置自增运算符 - 变量名++
  • デクリメント演算子は、整数値を連続的に -1 するために使用されます:
a. 前置詞タイプ: デクリメント演算子はオペランドの前に配置され、値を割り当てる前に最初に 1 をデクリメントします。 : decrement 演算子はオペランドの前に割り当てられ、その後 1 減算されます


演算子の優先順位

演算子は優先順位を計算済みです
    1. 優先順位の高い演算子が最初に計算されます
  • 2. 演算子のレベル 同じ、左から右へ計算します

    3. 最も優先度の高い演算子は「()」です 4. 最初に計算される式は「()」で囲まれます

        console.log(100 + 200 - 150 * 3);// -150
        console.log(100 + 200 % 3);// 102
        console.log(2 * 200 % 3);// 1
    
        var num = 10;
        console.log(5 + ++num);// 16




    比較演算 記号

    JavaScript言語の比較演算子は主に2つのオペランドの値が等しいかどうかやサイズを比較するために使用されます
  • 一.大于与小于比较运算符
        console.log(10 > 11);//false
        console.log(11 > 10);//true
        console.log(10 >= 10);//true
        // 2.boolean类型 - 将boolean类型转换为number类型
        console.log(true > false);//true
        console.log(true > 0);//true
    /*
        3.string类型 - a.英文; b.中文
        * 英文或中文 - 将文本转换成Unicode码 - 对应具有数字值
        * 英文单词 - 从左至右的一次比较字母 Unicode 码的大小
    */
        console.log(&#39;a&#39; < &#39;b&#39;);//true
        console.log(&#39;a&#39; > &#39;A&#39;);//true
        console.log(&#39;abc&#39; > &#39;cba&#39;);//false
        console.log(&#39;abc&#39; > &#39;acd&#39;);//false
    
        console.log(&#39;我&#39; > &#39;你&#39;);//true
    二.相等与不等比较运算符

    等価比較演算子*と代入演算子*の違い代入演算子(=)

    *等価比較演算子(==)
  • 不等比較演算子
※記号は「!=

※「」ではありません

等価・不等比較演算子はオペランドの値を比較するだけであり、比較の種類はありません

    // 1.number类型
    console.log(10 == 10);// true
    console.log(10 == 11);// false
    // 2.boolean类型
    console.log(true == true);// true
    console.log(true == false);// false

    console.log(true == 1);// true

    // 3.string类型
    console.log(&#39;a&#39; == &#39;a&#39;);// true
    console.log(&#39;a&#39; == &#39;b&#39;);// false
    
    console.log(&#39;100&#39; == 100);// true

三.全等与不全等运算符 
全等与不全等运算符 不仅比较值 还比较类型
rree


関数



isNaN() 関数は、パラメーターが NaN 値 (非数値) かどうかを判断するために使用されます関数: 現在の値が NaN であるかどうかを判断します
    true - 現在の値が NaN (数値ではない) であることを意味します数値)
  • false - 現在の値が NaN ではない(数値ではない)ことを示す

    isFinite() 関数

    関数 - 現在の値が無限大であるかどうかを判断する
  • false - 現在の値が無限大であることを示す
true - であることを示す現在の値は有限値です

    console.log(10 === 10);// true

    console.log(&#39;10&#39; === 10);// false
    console.log(&#39;10&#39; == 10);// true



論理 AND 演算子



JavaScript 演算子の基本的な使用法は、ブール型の計算用です

論理 AND 演算子 両方のオペランドがブール型の場合、両方のオペランドがブール型である場合にのみ返されます。 true 結果は true、そうでない場合は false
    1. 論理 AND 演算子の 2 つのオペランドをブール型に変換します
  • 2 左側のオペランドが true の場合、結果は右側のオペランドの値になります

    3 . 左側のオペランドが false の場合、結果は左側のオペランドの値になります

        console.log(isNaN(100));// false
        console.log(isNaN(Number(&#39;卧龙学苑&#39;)));// true
    
        var result = 100/0;
        console.log(result);// Infinity
        //isFinite()函数
        console.log(isFinite(result));// false

論理OR演算子



論理OR演算子を使用する場合、両方のオペランドがブール型の場合のみオペランドの型の数値のいずれかが true の場合のみ返される結果は true、そうでない場合は false

    console.log(true && true);// true
    console.log(true && false);// false
    console.log(false && true);// false
    console.log(false && false);// false

    console.log(100 && 1);// 1
    console.log(1 && 0);// 0
    console.log(0 && 1);// 0
    console.log(0 && 0);// 0

    console.log(true && true);
    console.log(true && false);
    console.log(false && true);
    console.log(false && false);

    console.log(&#39;卧龙学苑&#39; && &#39;卧龙学苑&#39;);// 卧龙学苑
    console.log(&#39;卧龙学苑&#39; && &#39;&#39;);// &#39;&#39;
    console.log(&#39;&#39; && &#39;卧龙学苑&#39;);// &#39;&#39;
    console.log(&#39;&#39; && &#39;&#39;);// &#39;&#39;

    console.log(&#39;卧龙学苑&#39; && 1);// 1
    console.log(false && 0);// false
  • 代入拡張演算子

JavaScript言語の代入演算子は、変数またはプロパティに値を代入するために使用されます

JavaScript言語の代入拡張演算子 実は代入演算子と算術演算子の省略モードを併用したものです
    JavaScript言語の代入拡張演算子の方が実行効率が高いです
  •     var b = 10, c = 20;
    
        var a = b + c;
        console.log(a);// 30
    
        // b = b + c;
        // 等价写法 - 赋值扩展运算符的性能要比赋值运算符更高
        b += c;
        console.log(b);// 30
    • 条件运算符

    条件运算符 首先判断一个表达式是真是假 然后根据判断结果执行两个给指定指令中的一个

        var result = 8 > 9 ? &#39;对&#39; : &#39;错&#39;;
        console.log(result);
    
        var score = 95;
        score > 90 ? console.log(&#39;优秀&#39;) : console.log(&#39;及格&#39;);
    • 嵌套条件运算符

    条件运算符中 每个表达式可以又是一个条件运算表达式 称为条件运算的嵌套
    优点:扩展了条件运算符本身的计算能力
    缺点:可读性比较差 性能随着嵌套的层级越多越差
    建议:不要最多不要超过三层嵌套

        var score = 55;
    
        var result = score > 90 ? &#39;优秀&#39; : (score > 80 ? &#39;良好&#39; : (score > 60 ? &#39;及格&#39; : &#39;不及格&#39;));
        console.log(result);

    相关推荐:

    js比较和逻辑运算符的介绍

    运算符优先级-PHP运算符优先级

以上がjs 演算子の優先順位の比較と js 論理演算子の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
es6数组怎么去掉重复并且重新排序es6数组怎么去掉重复并且重新排序May 05, 2022 pm 07:08 PM

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

JavaScript的Symbol类型、隐藏属性及全局注册表详解JavaScript的Symbol类型、隐藏属性及全局注册表详解Jun 02, 2022 am 11:50 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

原来利用纯CSS也能实现文字轮播与图片轮播!原来利用纯CSS也能实现文字轮播与图片轮播!Jun 10, 2022 pm 01:00 PM

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

JavaScript对象的构造函数和new操作符(实例详解)JavaScript对象的构造函数和new操作符(实例详解)May 10, 2022 pm 06:16 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

JavaScript面向对象详细解析之属性描述符JavaScript面向对象详细解析之属性描述符May 27, 2022 pm 05:29 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

javascript怎么移除元素点击事件javascript怎么移除元素点击事件Apr 11, 2022 pm 04:51 PM

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

foreach是es6里的吗foreach是es6里的吗May 05, 2022 pm 05:59 PM

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

整理总结JavaScript常见的BOM操作整理总结JavaScript常见的BOM操作Jun 01, 2022 am 11:43 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境