JavaScript-day02

87 阅读4分钟

一.运算符

1.比较运算符

01.'=='判断两个数据值相同,如果相同返回true,否则返回false

02.'!='判断两个数据值不相同,如果不相同返回true,否则返回false

    *console.log(10 == 10);      // true
     console.log(10 == 20);      // false
     console.log(10 != 20);      // true 
     console.log(10 != 10);      // false
     console.log('hello'=='hello');  // true
     console.log('hello'=='world');  // false*

03.当数值和字符串比较大小,浏览器会把字符串转换为数值再进行比较

     console.log(3 > '20');           // false

04.全字符比较 比较的是编码

     onsole.log('3' > '20');         // true            

05.'==='全等

比较的两个数的值与类型必须完全相同,相同返回true,否则返回false

    console.log(10 == '10');        // true
    console.log(10 === '10');       // false
    console.log('10' === '10');       // true

06.'!== '不全等

比较的两个数的值与类型至少有一方面不相同,有一方面不相同就返回true,否则 返回false

    console.log(10 != '10');            // false
    console.log(10 !== '10');            // true
    console.log(10 !== 10);            // false        

2.逻辑运算符

01.'&&' 逻辑与 口诀:找假(只要有一个错误,则不成立)

                true        false
    console.log(10 > 5 && 10 > 12);     // false

02.'||' 逻辑或 口诀:找真(只要有一个正确,则成立)

                true        false
    console.log(10 > 5 || 10 > 12);     // true

03.'! ' 逻辑非(反着来,对就错;错就对)

    console.log(!true);         // false
    console.log(!false);        // true

3.运算符的优先级

可以使用 () 来提升运算符的优先级,优先运算的用括号括起来

4.自增与自减

01.'++'可以放在变量前,也可以放在变量后

    无论前自增,还是后自增,对变量的值是没有影响的,都会加1

02.影响的是参与其他运算时

    前自增:先自增,再参与运算(使用本次自增后的值参与运算)
    后自增:先运算(使用本次未自增的值参与运算),本次运算结束后再自增

03.'--'也是一样,同上。

二.分支结构-if分支

1.if分支语法及执行逻辑

01.分支结构: 应用场景,根据条件来决定某一段代码的执行。

            语法:
                       if(表达式1){
                           // 代码块1
                       }else if(表达式2){
                           // 代码块2
                       }else if(表达式3){
                           // 代码块3
                       }else{
                           // 缺省代码块
                       }
           
                       //..后结代码..
                       //..后结代码..
                       //..后结代码..

02.执行逻辑:

  自上而下的判断表达式是否成立,如果某个表达式成立就执行相应的代码块。
  当某个代码块执行结束后,不会再判断其后的表达式,而跳过if结构,继续后的代码执行
  如果所有的表达式都不成立,则执行缺省代码块
  else if结构可以在多个
  else 也可以省略的

03.如以下代码:

            let gender = prompt('请输入性别')
            if (gender == '男') {
                document.write('胜似潘安');
            } else if (gender == '女') {
                document.write('沉鱼落雁');
            } else {
                document.write('数据不合法');
            }

2.三元运算符

       语法:
         表达式 ? 语句1 : 语句2
         首先判断 表达式 是否成立,
         成立就选择 语句1执行
         不成立就选择 语句2执行

01.三元运算符就是对 if else 双分支的简化

02.只要代码块中只有一条语句时才可以使用 三元运算符简化

image.png

三.布尔类型的转换

1.显示转换

image.png

注意:数值'0'不能转换;字符串为空不能转换(空格不为空)

2.隐式转换

image.png

四.分支结构-switch分支

1.switch分支语法以及执行逻辑

      switch语法
                  switch(变量){
                      case1:
                          代码块1
                          break;
                      case2:
                          代码块2
                          break;
                      case3:
                          代码块3
                          break;
                      default:
                          缺省代码块
                  }

image.png

注意: switch后的变量与case后的值的比较于' === '

2.if与switch区别

01.if条件常用于表示一个 范围

02.switch条件一个变量和多个具体值的匹配

03.如果以后遇到一个变量和多个具体值的匹配强烈推荐使用switch,因这种情况使用switch效率高于if

3.switch穿透

image.png

例:

image.png

五.循环结构-for循环

循环:重复执行一段代码。

1.for语法

          for语法:
  
              for( 初值 ; 终值 ; 步长){
  
              for( 循环控制变量初始化 ; 表达式 ; 循环控制变量修改){
  
                  // 循环体代码
                  // 循环体代码
                  // 循环体代码
              }

            执行逻辑:
                 a. 首先执行 定义一个循环控制变量, 此步仅执行1b. 判断 表达式 是否成立?如果不成立就直接退出整个语法结构,执行后续代码。
                     如果成立就执行语句块(循环体)
                 c. 当语句块(循环体) 执行结束后,再执行 循环控制变量修改
                 d. 再来判断 表达式 是否成立?如果不成立就直接退出整个语法结构,执行后续代码。
                     如果成立就执行语句块(循环体)
     
                 e. 重复的执行 b c d 
                 

2.for循环应用

               // 计算1 至100之间的整数和
                let sum = 0;
                for(let i=1;i<=100;i++){
                    sum = sum + i;
                }
                console.log(sum);
                
              // 使用for循环在页面输出1 行10列的表格
             let str = '<table border="1" rules="all" width="500" height="500">';
                 
             str +='<tr>'
             for(let i=0;i<10;i++){
                 str +='<td></td>'  
             }   
             str +='</tr>'
     
             str += '</table>'
             
             document.write(str);