js基础(二)

本文介绍了JavaScript中的运算符,包括赋值运算符、一元运算符、三元运算符和比较运算符。接着讨论了语句的概念,如表达式与语句的区别,if分支和switch语句的用法。接着讲解了循环的原理和应用,如while循环以及循环的退出方式。最后对比了if多分支与Switch的区别,强调了它们在不同场景下的适用性。
摘要由CSDN通过智能技术生成

一、运算符

1、赋值运算符

赋值运算符:对变量进行赋值的运算符

将 = 号右边的值赋予给左边,要求左边必须是一个容器

其它赋值运算符:`+=,-=,*=,/=,%=`;使用这些运算符可以在对变量赋值时进行快速操作

 let num = 1
  num += 1
  console.log(num) //2

2、一元运算符:正负号

前置自增:++i

 let num = 1 
    ++num
    console.log(num)  //2

后置自增:i++

let n = 1
    n++  
    console.log(n)   //2

前置自增  后置自增 单独使用没有任何区别

但是前置自增和后置自增如果参与运算就有区别:

  前置自增:先自加再运算

  后置自增:先运算再自加

let i = 1
    console.log(i++ + ++i + i)
    最后输出 i 为 7

3、三元运算符

由 ? 和 : 这两个符号组成

语法:   条件 ? 满足条件执行代码1 : 不满足条件执行代码2

//用户输入3个数字,最后输出最大的那个数字
let num1 = +prompt('请输入第一个数字')
    let num2 = +prompt('请输入第二个数字')
    let num3 = +prompt('请输入第三个数字')
    let max = num1>num2 ? num1 : num2
    max = max>num3 ? max : num3
    alert(max)

4、比较运算符

'>' '<' '>='  '<='    这些就是比大小

==    左右两边的值是否相等

===   左右两边的值 和 类型是否都相等(全等)

!==  左右两边是否不全等

!=  不等

5、逻辑运算符

逻辑运算符用来解决多重条件判断

符号

名称

日常读法

特点

简记法

&&

逻辑与

并且

符号两边条件需要全部满足

一假全假

||

逻辑或

或者

符号两边条件满足一个即可

一真全真

!

逻辑非

取反

比较叛逆,true变false,false变true

真变假,假变真

6、运算符优先级

一元运算符里面的逻辑非优先级很高

逻辑与比逻辑或优先级高

优先级运算符顺序
1小括号()
2一元运算符++     --     !
3算数运算符先  *    /    %    +    -
4关系运算符>    >=    <    <=
5相等运算符==    !=    ===    !==
6逻辑运算符先    &&    后    ||
7赋值运算符=
8逗号运算符,

二、语句

1、表达式和语句

表达式是可以被求值的代码,它是有结果的(简单理解表达式就是一个式子)

语句是一段可以执行的代码,它是没有结果的

2、分支语句

根据一定的条件去选择执行某段代码,这就是分支语句

3、if分支

if语句有三种使用:单分支、双分支、多分支

 单分支

语法:

if(条件){

          满足条件执行的代码

      }

      当小括号里面的条件为 true 时,进入大括号执行代码

      当小括号里面的条件不是布尔类型时,会发生隐式转换,转换为布尔类型

 //1、用户输入分数
    let scroe = +prompt('请输入分数')
    //2、判断
    if(scroe >= 700){
       document.write('恭喜您加入本校');
    }

双分支

 语法:

    if(条件){

        满足条件执行的代码

    }else{

       不满足条件执行的代码

    }

    满足条件,执行if里面的代码,不满足,则执行else里面的代码

 //1、输入用户名 密码
    let uname = prompt('请输入用户名')
    let pwd = prompt('请输入用密码')
    //2、判断
    if (uname === '加钱居士' && pwd==="得加钱") {
      alert('恭喜成功登录')
    }
    else{
      alert('用户名或者密码输入错误')
    }

多分支

  语法:

    if(条件1){

        代码1

    }else if (条件2){

    代码2

    }else if (条件3){

    代码3

    }else{

    代码n

    }

    先判断条件1,如果满足,就执行代码1

    如果不满足,则向下判断条件2 ,满足就执行,不满足则向下继续判断,以此类推

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

let score = +prompt('请输入分数')
    if (score >= 90){
      alert(`你的分数是${score},优秀`)
    }
    else if(score >=70){
      alert(`你的分数是${score},良好`)
    }
    else if(score >=60){
      alert(`你的分数是${score},及格`)
    }
    else{
      alert(`你的分数是${score},不及格`)
    }
       // 条件可以写无数个

4、switch语句

语法:

    switch (表达式) {

          case 值1:

            代码1

            break  

          case 值2:

            代码2

            break  

          case 值3:

            代码3

            break  

          default:

            代码n

            break

        }

  找到跟小括号里面表达式数据 全等=== 的case值,并执行里面相应的代码

  若是没有全等 === 的,则执行最后default里面的代码

let subject = +prompt('选择发放的奖品:1-电脑,2-手机,3-平板,4-手表')
    switch (subject){
      case 1:
      alert('恭喜你获得了电脑')
      break
      case 2:
        alert('恭喜你获得了手机')
        break
        case 3:
        alert('恭喜你获得了平板')
        break
        case 4:
        alert('恭喜你获得了手表')
        break
        default :
        alert('没有该选项')
    } 

三、循环

作用:重复执行一些操作

while循环

语法:

  while(循环条件){

    重复执行的代码(循环体)

  }

let money = 1
    while(money <= 10){
      document.write('月薪百万 </br>')
      money++
    }

跟if语句很像,都是需要满足小括号里面的条件为true 才会进入循环体,执行代码

while 大括号里面的代码执行完毕后不会跳出,而是继续会到小括号里面判断条件是否满足

如果满足,就继续执行大括号里面的代码,然后再回到小括号判断条件,直到括号内条件不满足,才会跳出

循环三要素:

1、变量起始值

  2、终止条件(没有终止条件,循环会一直执行,造成死循环)

  3、变量变化量 (用自增或者自减)

<script>
<!-- 1. 变量的起始值 -->
  let i = 1
  <!-- 2. 终止条件 -->
   while (i <= 3) {
    document.write('我要循环三次 <br>')
   <!-- 3. 变量的变化量 -->
    i++
  }
</script>

循环退出

continue  退出本次循环,一般用于排除或者跳过某个选项的时候,可以使用continue

break     退出整个循环,一般用于结果已经得到,后续的循环不需要的时候,才会使用

四、if多分支与Switch的区别

1、共同点

都能实现多分支选择

大部分情况下可以互相转换.

2、区别

Switch...case 语句通常处理case 为比较  确定值的情况

而 if...else...语句更加的灵活,通常 适用于 范判断(比如说 大于等于某个范围)

Switch语句 进行判断后直接执行到程序的语句,效率更高

而 if...else语句,有几种判断条件,就需要判断多少次

Switch 一定要注意 必须是 === 全等,一定注意数据类型,同时注意 break ,否则会有穿透效果

  结论:

当分支比较少的时候,if...else语句执行效率更高

当分支比较多的时候,Switch语句执行效率更高,而且结构更加情绪

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值