• JavaScript的运算符


      今天我来谈一下我对于JavaScript的运算符的见解。运算符这个概念我们不陌生,数学中的“+,-,*(这个符号是乘号),/(这个符号是除号),=”这五个运算符是我们最常见的;我们今天说一下我们最常用的;

      1、JavaScript的算术运算符;"+, -, *, /"

      我们首先通过一个表格来看一下这几个运算符都代表什么含义:

    运算符 含义值
    +

    1、加法

    2、拼接

    - 减法
    * 乘法
    / 除法
    % 求余数

      看下面这这组代码讲的是在JavaScript中的输入方法:

      

            + - * / a++ a-- ++a --a
        var a = 5 % 3; // a=2 取模就是我们常说的求余数;5/3 商1余2;
    
        a = a + 1; // 简写 a += 1
        a = a - 1; // 简写 a -= 1
        a = a * 1; // 简写 a *= 1
        a = a / 1; // 简写 a /= 1
        a = a % 1; // 简写 a %= 1
    
        a++ 等同于 a = a + 1;
        a-- 等同于 a = a - 1;
    
        var a = 1;
        var b = a++ + ++a; // 第一个 a = 1 , 第二个 a = 3 结果是 4
        ++a 等同于 a = 1 + a;
        --a 等同于 a = -1 + a;
        () 能改变运算符的优先计算等级    

      我通过几个简单的例子演示下它们的用法:  

            // + 运算符
        alert(5+2); // 7
        var a = 1;
        var b = a + 2;
        alert(b); // 3
    
        // - 运算符
        alert(7-1); // 6
        var a = 3;
        var b = a -2;
        alert(b); // 1
    
        // * 运算符
        alert(3*2); // 6
        var a = 5;
        var b = a*2;
        alert(b); // 10
    
        // / 运算符
        alert(9/3); // 3
        var a = 6;
        var b = a/2;
        alert(b); // 3
    
        // % 运算符
        alert(7%3); // 1
        var a = 10;
        var b = a%3;
        alert(b); // 1    

      注意a++ 与++a和a-- 与 --a的区别:

        // a-- 等同于 a-=1 区别是这个就是每次 -1 先赋值后运算。
        // a-- 等同于 a+=-1 先运算后赋值 
       var a = 5; alert(a-=1); // 4 var a = 5; alert(a--); // 5 var a = 5; alert(--a); // 4 // 思考这个结果是多少 var a = 1; var b = a++ + ++a; // 第一个 a = 1 , 第二个 a = 3 结果是 4
      /* a++ 我们可以这样理解*/
      var a = 1;
      alert(a);a += 1;
      //按照代码的读取格式,从上向下,从左到右,这样的话;当代码读到 alert 的时候就会先输出 a 的值也就是 1 ,然后在进行 +1 的运算。a-- 以为是同样的道理。

        2、JavaScript的赋值运算符:    

        对于赋值我们很熟悉了;例如 :    

    var a = 1;//我们把数字 1 赋值给了变量 a ;
    //JavaScript中 “=” 号并不是我们数学中的等于的意思,而是代表赋值;将一个值赋予给另外的一个值;我们还可以这样赋值:
    var a = 2;
    var b = a
    ;
    alert(b);//输出的值是2;我们为变量 a 赋值了数字2;然后我们还可以把变量 a 在赋值给变量 b ;

        3、JavaScript的比较运算符;

        在数学中我们常用的比较符有:大于号(>),小于号(<),等于号(=),大于等于(>=);小于等于(<=),不等于(!=);后面的小括号里面的是在计算机里的书写方法;

        需要注意的是在JavaScript中表示等于的符号是“==”;两个等号代表相等;“===”三个等号代表全等具体的我会在下面的例子来说明;    

    var a = 123;//这个是数字;
    var b = '123';//这个是字符串;
    if(a == b){
        alert('两个值相等');
    }else{
        alert('两个值不相等')
    }   
    //这个会输出两个值相等;
    if(a === b){
        alert('两个值相等');
    }else{
        alert('两个值不相等')
    } 
    //这个会输出两个值不相等; 
    /*
    *这是为什么呢, == 号只要是值相等那么就会判定这两个变量相等;但是 === 需要值的类型也相同!
    */

        下面的例子说一下其他的比较符:    

            // > 大于
            var a = 6;
        var b = 3;
        if(a > b){
            alert('a 确实大于 b');
        }else{
            alert('a 不大于 b');
        }
    
        // < 小于
        var a = 6;
        var b = 3;
        if(a < b){
            alert('a 确实大于 b'); // 为真才走的分支
        }else{
            alert('a 不大于 b'); // 为假走的分支
        }
    
        // == 等于
        var a = 6;
        var b = 3;
        if(a == b){
            alert('a 确实等于 b');
        }else{
            alert('a 不等于 b');
        }
    
        // === 全等于
        var a = 3;
        var b = '3';
        if(a == b){ // 注意这里是 == 等于
            alert('a 确实全等于 b');
        }else{
            alert('a 不全等于 b');
        }
    
        var a = 3;
        var b = '3';
        if(a === b){ // 注意这里是 === 全等于
            alert('a 确实全等于 b');
        }else{
            alert('a 不全等于 b');
        }
    
        // != 不等于
        var a = 3;
        var b = '3';
        if(a != b){ // 注意这里是 != 不等于
            alert('a 不等于 b');
        }else{
            alert('a 等于 b');
        }
    
        var a = 3;
        var b = 7;
        if(a != b){ // 注意这里是 != 不等于
            alert('a 不等于 b');
        }else{
            alert('a 等于 b');
        }
    
        // !== 不全等
        var a = 3;
        var b = '3';
        if(a != b){ // 注意这里是 != 不等于
            alert('a 不等于 b');
        }else{
            alert('a 等于 b');
        }
    
        var a = 3;
        var b = '3';
        if(a !== b){ // 注意这里是 !== 不全等于
            alert('a 不全等于 b');
        }else{
            alert('a 全等于 b');
        }
    
        // >= 大于等于
        var a = 3;
        var b = 3;
        if(a > b){
            alert('你说的对');
        }else{
            alert('你说的不对');
        }
    
        var a = 3;
        var b = 3;
        if(a >= b){
            alert('你说的对');
        }else{
            alert('你说的不对');
        }
    
        // <= 小于等于
        var a = 3;
        var b = 3;
        if(a < b){
            alert('你说的对');
        }else{
            alert('你说的不对');
        }
    
        var a = 3;
        var b = 3;
        if(a <= b){
            alert('你说的对');
        }else{
            alert('你说的不对');
        }
        

       3、逻辑运算符:

        逻辑运算符指的是:与(&&)、或(||)、 非(!);这三种

         多个条件组合, 结果也是 true(真) 或 false(假)

         && 与 &&运算符两边 都为 true 结果(真) 才为 true(真)

         || 或者 || 运算符两边 只要有一个为 true(真) 就为 true(真)

         ! 非 取反

         下面的看一些小例子:

      

    // && 并且
        var a = 'yes';
        var b = 'no';
        if(a == 'yes' && b == 'yes'){ // 两个判断必须都为真
            alert('你是对的');
        }else{
            alert('你是错的');
        }
    
        var a = 'yes';
        var b = 'yes';
        if(a == 'yes' && b == 'yes'){
            alert('你是对的');
        }else{
            alert('你是错的');
        }
    
        // || 或者
        var a = 'yes';
        var b = 'no';
        if(a == 'yes' || b == 'yes'){ // 其中有一个为真就是真
            alert('你是对的');
        }else{
            alert('你是错的');
        }
    
        var a = 'yes';
        var b = 'yes';
        if(a == 'yes' || b == 'yes'){ // 两个都为真更是真, 其实第一个为真第二个就不在去判定
            alert('你是对的');
        }else{
            alert('你是错的');
        }
    
        // ! 非
        var a = 'yes';
        if(a != 'no'){
            alert('你是对的');
        }else{
            alert('你是错的');
        }

       4、其他运算符:

       三元运算符:a ? b : c

      

         var a = 1, b = 2;
         a>2 ? alert('yes'): alert('no'); //no;我们可以把它看成 if ... else 的简写形式 !
        
       if(a>2){
        alert('yes')
       }else{
        alert('no')
       }
    
    
  • 相关阅读:
    第 1 章 代码无错便是优?——简单工厂模式
    [转载]由浅入深探究mysql索引结构原理、性能分析与优化
    jquery中 $.expr使用实例介绍
    jQuery UI Widget(1.8.1)工作原理
    asp.net url重写
    CJL.0.1.js
    React Context 的用法
    小程序组件使用
    深入理解es5中Object.defineProperty()
    React合成事件
  • 原文地址:https://www.cnblogs.com/ade-Java/p/5884742.html
Copyright © 2020-2023  润新知