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

js 演算子の優先順位の比較と js 論理演算子の分析

php是最好的语言
リリース: 2018-08-08 17:19:54
オリジナル
2976 人が閲覧しました

この記事では、さまざまなカテゴリの演算子について詳しく説明し、その後、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 サイトの他の関連記事を参照してください。

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