JS算术运算符、 JS赋值运算符、 JS自增自减、 JS比较运算符、 JS逻辑运算符、 JS三元运算符、 JS选择分支

1.算术运算符

常见的算术运算符:

  • 加 +
  • 减 -
  • 乘 *
  • 除 /
  • 幂 ** 23 2的三次方 222 = 23
  • 余数 % 7%3 7/3 = 2 ····1

2.赋值运算符

  • 变量没有赋值时,变量的值是不会发生变化的。
  • a = a + 1; 可以写成 a+=1;
  • +=
  • -=
  • *=
  • /=
  • %=

例:

    var a = 5;
    a *= 2;
    console.log(a);  //10

    var a = 5;
    a %= 2;
    console.log(a);  //1

3.自增自减

  • 自增自减是一元运算符的一种。
  • 一元运算符:只能操作一个数值的运算符就叫做一元运算符。

自增: 自身的值上+1

  • 变量++;
  • ++变量;

自减: 自身的值上-1

  • 变量–;
  • –变量;

【共同点】最终结果都是一样的,自增都是+1,自减都是-1;
【区别】

在参与运算时:

  • ++在变量前面时,会先改变变量的值,用改变后的值去进行运算。
  • ++在变量的后面时,会用自身的值先去运算,运算完成后,再改变自身的值。

例:

    var x = 10;
    x++;
    ++x;
    console.log(x);  //12

    var x = 10;
    x++;
    ++x;
    console.log(x++ + ++x);  //26

    var x = 10;
    x--;
    --x;
    var y = x++ + 1;
    var y = ++x + 1;
    console.log(y);  //11

    var x = 10;
    x--;
    --x;
    var y = x++ + 1;
    var y = ++x + 1;
    console.log(x++);  //10

    var x = 10;
    x--;
    --x;
    var y = x++ + 1;
    var y = ++x + 1;
    console.log(x-- + --x + x + ++x);  //35

4.比较运算符

比较运算符:用于比较两个值的大小关系,返回值是一个布尔值。

  • > 大于
  • < 小于
  • >= 大于等于
  • <= 小于等于
  • == 相等
  • === 严格相等
  • != 不相等
  • !== 严格不相等

字符串之间的比较:按照字典排序比较的。(实际上按照编码顺序来排序的。)小写的字母比大写的字母的顺序要高。

比较的步骤:

  • 比较首字母的大小,首字母大的就大,首字母小的就小。
  • 如果首字母相等,则比较下一个字符,直到字符串结束或者分出大小。
  • 如果两个字符串的字符数相等,则两个字符串相等,如果未结束,还有字符的字符串比较大。

不同类型的比较:js会将其先转为数字,再比较大小。

【注意】字符串如果不能转数字,与其他的值比较都是false。

例:
    console.log(4 !== "4");  //true
    console.log("c">"ca");  //false
    console.log("4"<100);  //true
    console.log("apple">"iphone")  //false;
    console.log("1">"12");  //false
    console.log(undefined === null);  //false

5.逻辑运算符

逻辑运算符: 一般用来做条件判断。

  • ! 取反
  • && 与
  • 【运算规则】如果第一个运算子的布尔值为true,则返回第二个运算子的值。如果第一个运算子的布尔值为fasle,则直接返回第一个运算子的值。而且,不会执行第二个运算子。
  • 如果两个都是true,返回true,只要有一个fasle,返回的就是false。
  • || 或
  • 【运算规则】 如果第一个运算子的布尔值为true,则返回第一个的值,而且不执行第二个运算子。如果第一个运算子的布尔值为false,则返回第二个的值。
  • 如果两个都是false,返回false。只要有一个true,返回的就是true。

例:

    console.log(true && false);  //false
    console.log(x);  //10
    console.log("true" || false);  //true

6.三元运算符

三元运算符也叫做三目。

语法格式:

  • 表达式1?表达式2:表达式3;
  • 表达式1是一个条件,值为Boolean(布尔值)类型。
  • 若表达式1的值为true,则执行表达式2的操作。
  • 若表达式1的值为false,则执行表达式3的操作。

例:

    var a = 5;
    var b = 6;
    console.log(a>b?a:b);  //6

三元小案例(补0)

  • 用户输入一个数字,如果数字小于10,则在前面补0,如果大于10,不需要补0;将结果输出到控制台。
    var num = prompt("请输入一个数字!");
    console.log(num < 10 ? "0" + num : num);  //如果输入的数值小于10,输出的结果会在前面补0。大于10则直接输出。

7.选择分支

程序执行的三种结构:

  • 顺序结构 从上往下执行
  • 选择结构(分支结构)
  • if
      单分支
      多分支
    switch
  • 循环

【选择结构】

  • if后面的()千万不要忘了。
  • if中的{}里面的代码如果只有一行,{}可以省略,但是不推荐这样写。
  • if嵌套最好不要超过三层。
  • 把执行概论大的放在前面。

if语句语法

  • 单分支:
  • if (条件表达式) {
    条件表达式的结果为true时,执行的代码。
    };
  • 多分支:
  • if (条件表达式1) {
    条件表达式1的结果为true时,执行这里的代码。
    } else if (条件表达式2) {
    条件表达式2的结果为true时,执行这里的代码。
    } else if (条件表达式3) {
    条件表达式3的结果为true时,执行这里的代码。
    }…
    else {
    上面所有表达式都不成立,则执行这里面的代码。
    };

【注意】 else if是可以省略的。 最后的else也是可以省略的,但不建议这样写。

例:
    var a = 12;
    if(a>10){
      console.log("a的值比10大");  //a的值比10大
    }
    console.log("执行完成。");  //执行完成。

    var age = 20;
    if (age>28) {
      console.log("在哪里上班啊,月薪多少,有对象吗");
    }else if(age>18){
      console.log("你成年了,可以去网吧了!");  //将执行这里的代码
    }else{
      console.log("从后门进来");
    };

if语句嵌套

  • if (表达式1) {
       if (表达式2) {
          这里的代码,表达式1成立,表达式2也成立。
        };
      };
案例:
    /* 用户输入自己的汽油编号,输入加多少升,弹出总价。
    92 6.2  20升 6.0
    98 7.1  30升 6.8 */
    var gaso = prompt("请输入您要加的汽油编号:92/98");    //用变量去接收用户输入的数据。
    var litre = prompt("您要加多少升?");
    var total = 0;    //总价
    //判断用户加的汽油编号
    if (gaso == 92) {
      if (litre > 20) {
        total = litre * 6;
      } else {
        total = litre * 6.2;
      }
      alert("请缴费:" + total + "元!")
    } else if (gaso == 98) {
      if (litre > 30) {
        total = litre * 6.8;
      } else {
        total = litre * 7.1;
      }
      alert("请缴费:" + total + "元!")
    } else {
      alert("您输入的有误,请重新输入!")
    };

switch语句

  • switch语句用于多分支的选择语句。可以与if…elseif 替换使用。
  • 语法:
  • switch(表达式){
       case 常量1:
         执行的语句;
         break;
       case 常量2:
         执行的语句;
          break;
       …
       default:
         上面所有case选项都匹配不成功的时候,执行这里。
          执行的语句;
          break;
    }

【注意】

  • switch语句,只能判断条件表达式的一个结果,而不能判断范围。
  • case后面的常量与表达式的结果之间的关系,必须是完全相等,才成立。 (===)
  • case常量与表达式的结果匹配成立后,会执行case后面的代码,直到遇到break或者整个switch语句结束。
  • 一般情况下,不要省略default.
  • 如果多个case后面的代码一样,可以简写。
例:
    var grade = "A";  //90-100   //A 可以更成B、C、D。
    switch (grade) {
      case "A":
        alert("90-100");
        break;
      case "B":
        alert("80-90");
        break;
      case "C":
        alert("60-80");
        break;
      case "D":
        alert("不及格");
        break;
      default:
        alert("分级有误,请仔细查看");
        break;
    };

案例练习

  • 用户输入一个数,判断它是奇数还是偶数,将判断结果弹出!
    var num = prompt("请输入一个数字!");
    alert(num % 2 == 0 ? "这是一个偶数!" : "这是一个奇数!");
  • 用户输入一个4位数,分别把这4位数输出到控制台。比如说:1234, 输出结果:1,2,3,4。
    var a = 1234;
    // 获取千位。
    console.log(parseInt(a / 1000));  //1
    // 获取百位
    console.log(parseInt(a / 100) % 10);  //2
    // 获取十位
    console.log(parseInt(a / 10) % 10);  //3
    // 获取个数  
    console.log(parseInt(a % 10));  //4
  • 判断c的值
    var a = 5, b = 7;
    c = a++ + b++;  //12
    c = ++a + b++;  //13
    c = a++ + ++b + ++a;  //5 + 8 + 7 = 20;
    console.log(c);  //26
  • 求两个数的最大数。
    var a = 17;
    var b = 20;
    if (a > b) {
      console.log(a);  //不执行
    } else {
      console.log(b);  //20  //因为是b > a 所以输出结果是20。
    };
  • 判断一个年份是闰年还是平年? (能被4整除且不能被100整除,或者能被400整除。)
    var year = 2021;  //更改数值查看结果
    if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
      alert(year + "年是一个闰年");  //不执行
    } else {
      alert(year + "年是一个平年");  //2021年是一个平年
    };
  • 根据BMI指数判断一个人的体型。(BMI = 体重/身高的平方。)
  • 65公斤/1.70**2;
    低于18.5 过轻,
    18.5-25 正常,
    25-28 有点重,
    28-32 胖了,
    32 严重。
    //第一步,用户输入身高和体重。
    var height = prompt("请输入您的身高");
    var weight = prompt("请输入您的体重");
    //第二步:计算BMI指数。
    var bmi = weight / (height ** 2);
    if (bmi < 18.5) {
      alert("偏瘦!")
    } else if (bmi < 25) {
      alert("正常")
    } else if (bmi < 28) {
      alert("适当运动一下")
    } else if (bmi < 32) {
      alert("注意饮食")
    } else {
      alert("请减肥,已经影响你的身体健康了")
    };
  • 用户输入月份,弹出对应月份的天数。
    var month = prompt("请输入月份");
    month = Number(month);
    switch (month) {
      case 1:
      case 3:
      case 5:
      case 7:
      case 8:
      case 10:
      case 12:
        alert("该月有31天!");
        break;
      case 2:
        alert("该月有28天!");
        break;
      case 4:
      case 6:
      case 9:
      case 11:
        alert("该月有30天!");
        break;
      default:
        alert("输入月份有误!")
        break;
    };

Day2
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值