javaScript语言学习(二)

运算符

1.基本运算符

typeof:用来获取一个值的类型以字符串的形式返回
一元运算符 加减乘除
1.1 算术运算符

  • ± * / %(取余)
    只需要一个
    注意:–true为1 false为0
  • 加法:可以合并字符串 值与字符串也会转化为字符串
    c = c+"" : 拼串作用,注意运算顺序,1+2+“3”和“1”+2
    a = “1” +a:为数值 也可转化
  • 减号:转化为数值计算 重要!!!
    a = +a 也可以转化为数值运算
result 1 + +"2+ 3    //6

作用:可以取反数值计算

  • 除,乘号:正常运算
    -0*1/1:转化为Number
  • 自增自减
    a++:是原值,它是个式子
    ++a:是自增后的值
     var d = 20;
     var result = d++ + ++d +d;  20+22+22
     console.log(result);
     输出为64

减法也是相同的
1.2 逻辑运算符

          !非
          a = !a 
          --进行非运算,就是对一个布尔值取反,true变false,false变true
          --对于非布尔值,先转化为布尔值,再取反
          --可以为任意类型取反两次转化为**布尔值**
             a = !!a
          &&与
          对于布尔值
          --短路思想:第一个为true,第二个语句可执行
          --第一个为false,第二个语句不执行
          对于非布尔值
          --如果都为真,返回后面的 如return = 0 && 2 返回2
          --如果第一个值为true,必然返回第二个值
            **就算后面的是0也对不是0也对**
          --如果第一个值为false,直接返回即可
          ||非
          对于布尔值
          --短路思想:第一个为真时,直接返回真,第二个不执行
          对于非布尔值
          --如果第一个值为true,则直接返回第一个值
          --如果第一个值为false,则返回第二个值

1.3 赋值运算符
= -= += /= %=
1.4 关系运算符

       对于数值
       var result = 5 >10;
       console.log("result = " +result);//false
       > 大于号
       判断关系是否成立,成立的话,返回ture,不成立的话,返回false
       >= 大于等于
       5>=4 返回true
       < 小于
       <= 小于等于** 等于成立也是true 它是或运算
       注意!!!!:
       --对于非数值,会将其先转化为**数值**再比较
       --如果符号两边**都是字符串**时,不会转化为数值比较,而会比较字符串中字符的Unicode编码
       "abc">"a":挨个比较。一位一位,相同则比较下一位
                 所以借用它来对英文排序,比较中文没有意义
       --如果比较的是两个字符串型的数字,可能得到的结果不是预期
       "11111111111">"3"  //false
       一定一定要转型:"11111111111"> +"3" 
         --1>=true //true
           0>=null //true
       任何值和NAN做任何比较都是false

1.5 相等运算符

      1. ==:用来比较两个值是否相等
      --如果类型不同,先转化为相同的类型再比较,
      一般是转化为Number,字符串和布尔值时
        true == "1" //true 1==1
      --null和字符串不行
        null == "0" //false
      --undefined 衍生自null,所以它们相等
      --NaN不和任何值相同,包括它本身
      --isNaN(b):判断b是不是NaN的函数
      var b = NaN;
      console.log(isNaN(b));//true
      2. != 语法同上
      3. ===:全等 类型和值
      --undefined === null //false
      4. !==:不全等 不会做类型转化
      1!=1 //false 1!==1 //true

1.6 条件运算符

    三元运算符
        语法:
           条件表达式?语句1:语句2
        --语句为真,执行语句1,语句为假,执行语句2 并返回结果
        获取ab最大值
        var max = a > b ? a : b;
        获取abc最大值
        max = max > c ? max : c;
        如果条件不是布尔值,会转化 "a"为true  ""为false

2. 运算符的优先级

,:可用来多赋值 定义
如:var a,b,c;
与&&在或||上面
只有分组的作用
一个{}的语句:一组语句,要么执行,要么都不执行
一个{}的语句:称为一个代码块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值