JS运算符及案例

本文详细探讨了JavaScript中的各种运算符,包括算术、比较、逻辑、赋值、位和三元运算符,并通过实际案例进行了深入解析,帮助读者掌握JS运算符的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JS运算符及案例

 <script>
         //i++;  后置型 对i加一
         //++i;   前置型 对i加一
         //字符串和任何相加都是拼到一起
         //字符串被减时会转换为数值 如不是数字会NaN
         //空字符串是0
         //null是0
         //true是1
         //false是0

         //任何字符串都是true
         //一切数字都是true

     


//前置运算符
        var i = 1;
        var j;
        var k;
        j = ++i;
        console.log(j);  // 输出2
        console.log(i);  // 输出2
        k = --i;
        console.log(k);  // 输出1
        console.log(i);  // 输出1


   // 后置运算符
      var i = 1, j, k;
      j = i++;
      console.log("j="+j);  // 输出1
      console.log("i="+i); // 输出2
      k = i--;
      console.log("k="+k); // 输出2
      console.log("i="+i);  //输出1

      //当++、--运算符前置的时候,返回自加/自减后的值
      //当++、--运算符后置的时候,返回自加/自减前的值
   var i=2;
        var j=i++;
        console.log(j)//得到2
        var i=2;
        var j=++i;
        console.log(j)//得到3
        

         var a = '89'; 
            a++;   //90,数值字符串自动转换成数值
            console.log(a)
            var b = 'ab'; 
            b++;   //NaN,字符串包含非数值转成NaN
            console.log(b)
            var c = false; 
            c++;   //1,false转成数值是0,累加就是1
            console.log(c)
            var d = 2.3; 
            d++;   //3.3,直接加1
            console.log(d)

   // 加法
     var result1 = 1 + 2;  //3
     console.log(result1);
     var result2 = 1 + NaN;  //NaN
     console.log(result2);
     var result3 = 100 + "100";  //100100
     console.log(result3)
     var result4 = "10+20=" + 10 + 20;  //10+20=1020
     console.log(result4)
     var result5 = "10+20=" + (10 + 20);  //10+20=30
     console.log(result5)
     var result6 = 10 + 20 + "=10+20";  //30=10+20
     console.log(result6)
   //减法
     var result1 = 5 - true;  //4,因为true被转换成了1
     console.log(result1)
     var result2 = NaN - 1;  //NaN
     console.log(result2)
     var result3 = 5 - 3;  //2
     console.log(result3)
     var result4 = 5 - "";  //5,因为""被转换成了0
     console.log(result4)
     var result5 = 5 - "2";  //3,因为"2"被转换成了
     console.log(result5)
     var result6 = 5 - null;  //5,因为null被转换成了0
     console.log(result6)


//乘法
     var result1 = 100 * 70;    //7000
     console.log(result1)
     var result2 = 100 * NaN;  //NaN,只要有一个操作数为NaN即为NaN
     console.log(result2)
     var result3 = 100 * true;  //100,因为true被转换成了1
     console.log(result3)
     var result4 = 100 * "";    //0,因为""被转换成了0
     console.log(result4)
     var result5 = 100 * "70";  //7000,因为"70"被转换成了70
     console.log(result5)
     var result6 = 100 * null;  //0,因为null被转换成了0
     console.log(result6)
     var result7 = 100 * "hello"; //NaN,因为"hello"被转换成了NaN
     console.log(result7)

     //除法
     var result1 = 100 / 50;  // 2
     console.log(result1)
     var result2 = 100 / NaN;  //NaN,只要有一个操作数为NaN即为NaN
     console.log(result2)
     var result3 = 100 / true;  //100,因为true被转换成了1
     console.log(result3)
     var result4 = 100 / "";    //Infinity,因为""被转换成了0
     console.log(result4)
     var result5 = 100 / "50";  //2,因为"50"被转换成了50
     console.log(result5)
     var result6 = 100 / null;  //Infinity,因为null被转换成了0
     console.log(result6)
     var result7 = 100 / "hello"; //NaN,因为"hello"被转换成了NaN
     console.log(result7)

     //取模
     var result1 = 10 % 3;    // 1,余数为1
     console.log(result1)
     var result2 = 100 % NaN;  //NaN,只要有一个操作数为NaN即为NaN
     console.log(result2)
     var result3 = 100 % true;  //0,因为true被转换成了1
     console.log(result3)
     var result4 = 100 % "";    //NaN,因为""被转换成了0
     console.log(result4)
     var result5 = 100 % "70";  //30,因为"70"被转换成了70
     console.log(result5)
     var result6 = 100 % null;  //NaN,因为null被转换成了0
     console.log(result6)
     var result7 = 100 % "hello"; //NaN,因为"hello"被转换成了NaN
     console.log(result7)
    
     //比较运算符
    var result1 = 3 > 2; //true
    var result2 = "3" > 22; //false
    var result5 = "a" > 22; //false,"a"被转换成了NaN
    var result3 = "3" > "2"; //true,"3"的字符编码是51,"2"的字符编码是50
    var result4 = "a" > "B"; //fasle,"a"的字符编码是97,"B"的字符编码是66

     null == undefined; //true
     console.log(null == undefined)
     NaN == NaN;        //false
     5 == NaN;          //false
     NaN != NaN;        //true
     false == 0;        //true
     true == 1;         //true
     true == 2;         //false
     undefined == 0;    //false
     null == 0;         //false
     "5" === "5";         //true
     console.log("5" == "5")

 //逻辑运算符
 
//逻辑非
     alert(!false);     //true
     alert(!"hello");   //false
     alert(!0);          //true
     alert(!"");         //true
     alert(!NaN);        //true
     alert(!88);         //false
   
//逻辑与
    alert( true  &&  true);  
    alert(false && true);

    // alert( 2>9  &&  5>3);
   
        //逻辑或
    alert(true || false);
    alert(false || true);



//赋值运算符
        var result=10;
        result += 9     //result=result+9
        //"+="就是前一个数等于前一个数加后面的数
       console.log(result) //19


       var result=10;
        result -= 9  
        //"-="就是前一个数等于前一个数减后一个数
        console.log(result)

//"*=","/=","%="同上面逻辑一样

   // 三元运算符
    var mima1=123456
    var mima2=123456
    var max = mima1==mima2 ? "注册成功" : "你的密码错误"; 
    //"mima1"是否等于"mima2" "?"问号就是向网页提问,如果是则返回第一个值,反正则是第二个值
    console.log(max)

    </script>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值