js第二天笔记

105 阅读1分钟

js算数运算符

数学运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模)。

+:求和 -:求差 *:求积 /:求商

%:取模(取余数) 开发中经常作为某个数字是否被整除

JavaScript中 优先级越高越先被执行,优先级相同时以书从左向右执行。

先乘除后加减,有括号先算括号里的

<script>
        let num1 = 100
        let num2 = 3
        //加减乘除,求余,取模
        console.log(num1 + num2);
        console.log(num1 - num2);
        console.log(num1 * num2);
        console.log(num1 / num2);
        console.log(num1 % num2);
        //有括号先算括号里的
        console.log( ( 1 + 2 ) * 8 / 4 );

    </script>

圆的面积

 <script>
        //在js里Math.PI表示 派
        //圆的面积 派*r的平方
        console.log(Math.PI);
        let r = prompt('请输入圆的半径')
        console.log('圆的半径是:' + Math.PI * r * r);
    
    </script>

赋值运算符

1648359467373.png

<script>
        /*  let num1 = 1
         num1 = num1 +1
         console.log(mun1); //2 */
        let num1 = 1
        //加减乘除,求余都可以这样写
        num1 += 1
        console.log(num1); //2

一元运算符

自增: 符号:++ 作用:让变量的值 +1 ; 自减: 符号:-- 作用:让变量的值 -1

1648359690320.png

1648359741841.png 前置++表示当次使用就已经+1了,后置++表示当次数值不变,下次使用+1.

 <script>
        let i = 1
        console.log(i++ + ++i + i);//7
        //过程i=1,
        // 未显示(i++=i+1=2)
        //++i=i++(已经是2了) + 1=3 
         //现在i已经是3了
         //就是1+3+3=7

    </script>

比较运算符

比较运算符的使用

 <script>
        //比较后的结果,是布尔类型true,false
        console.log(3 > 10);//false
        console.log(3 < 10);//true
        console.log(3 > 3);//false
        console.log(3 >= 10);//false
        console.log(3 <= 10);//true
        console.log(3 >= 3);//true
        //判断两个值是否相等要用两个"=",只会判断值,不会判断类型,会直接当成两个数值比较,写两个=号是为了区别赋值
        console.log(3 == 10);//false
        console.log(3 != 10);//!=表示不等于 true
        console.log(3 == '3');//true
        console.log(3 === '3');//false三个等于号会区别类型
        //不要用于比较小数,会出现精度问题
        //如果拿字符串比较,判断标准是把字符串转数字再去比较,有个表,了解即可

        console.log(NaN === NaN);//false 不相等 NaN不等于任何值包括他自己
        //类型转换在比较,会比较严谨
        console.log(3 > Number('1'));//true
    </script>

1648360109426.png

逻辑运算符

1648360186188.png

 <script>
        //&&逻辑与,表示 并且,一假则假
        let num = 6
        console.log(num > 5 && num < 10);//true
        console.log(num > 5 && num < 4);//false 一假则假
        // ||逻辑或,表示或者,一真则真,两假为假
        console.log(num > 5 || num < 10);//true
        console.log(num > 5 || num < 4);//true一假为真
        console.log(num > 3 || num < 4);//false两假为假
        // !逻辑非,取反,可直接改变布尔真假状态
        let gender = true; // true 男生

        console.log(gender); // true 
        console.log((!gender));  // 取反了 false 
    </script>

逻辑运算符里的短路

  <script>
      // 一假则假  && 左边为false 右边就不再去执行
      // console.log(2 > 10 && 1 < 3 && 3 > 1 && 9 > 5 && 5 < 10 && 8 > 2);

      // 工作中常见的写法
      // 如果今天还下雨 那我就去吃海鲜
      //   不下雨 不去吃海鲜了
      // let rain = false;

      // 左边成立了 右边才会去执行
      // rain && console.log('下雨 去吃海鲜');

      // 逻辑或 一真则真
      // 只要 || 左边 成立了为true,右边就不再去执行
      // console.log(100 > 3 || 2 > 6 || 9 > 10 || 10 > 11 || 13 > 20);

      // 工作中 常用的技巧
      // 如果下雨,那么我就不玩了
      let rain = false;
      rain || console.log('去玩');

      // 两个短路运算  逻辑或 和 逻辑与 
      //   工作中的语法  逻辑与来说   满足了 就去执行
      //   工作中的语法  逻辑或来说   不满足了 就去执行
    </script>

1648361167828.png

运算优先级

1648385175549.png

if语句

单分支

1648385378562.png

 <script>
        let fenshu = +prompt('请输入你的分数')
        if (fenshu > 700) {
            alert('恭喜你来北大了');
        } 
    </script>

双分支

 <script>
        let fenshu = +prompt('请输入你的分数')
        if (fenshu > 700) {
            alert('恭喜你来北大了');
        } else {
            alert('恭喜你来蓝翔了');
        }
    </script>

释义:

1 先判断条件1,若满足条件1就执行代码1,其他不执行

2 若不满足则向下判断条件2,满足条件2执行代码2,其他不执行

3 若依然不满足继续往下判断,依次类推

4 若以上条件都不满足,执行else里的代码n

5 注:可以写N个条件,但这里演示只写2个

三元运算符

1648385532075.png

 <script>
        let mun1 = prompt('请输入数字')
        let mun2 = prompt('请输入数字')
        let mun3
        mun3 = mun1 > mun2 ? mun1 : mun2
        console.log(mun3);
    </script>