JS基础二

一、运算符

1.1赋值运算符

目标:能够使用赋值运算符简化代码

  • 赋值运算符:对变量进行赋值的运算符
    - 已经学过的赋值运算符:= 将等号右边的值赋给左边,要求左边必须是一个容器
    - 其他赋值运算符:
    +=
    -=
    *=
    /=
    %=
let num = 1
num += 2
num = 3	

1.2一元运算符

目标:能够使用一元运算符做自增运算
众多的JavaScript的运算符可以根据所需表达式的个数,分为一元运算符、二元运算符、三元运算符

  • 二元运算符
let num = 10 + 20
  • 一元运算符
  • 例如:正负
  • 问题:我们以前让一个变量每次+1,以前我们做什么?
let num = 1
num = num + 1
  • 自增:
    • 符号:++
    • 作用:让变量的值+1
  • 自减
    • 符合:–
    • 作用:让变量的值-1
  • 使用场景:经常用于计数来使用,比如进行10次操作,用它来记录进行了多少次

前置自增:先自加再使用(++在前 先加
在这里插入图片描述
**后置自增:**先使用再自加(++在后 后加
在这里插入图片描述
注:单独使用没有差别

1.3比较运算符

  • 使用场景:比较两个数据大小、是否相等
  • 实际用例:
    在这里插入图片描述
  • ==:左右两边值是否相等 赋值
  • ===: 左右两边是否类型和值都相等 判断
  • !==:左右两边是否不相等 全等
  • 判断是否相等,强烈推荐使用===

字符串比较,比比较的字符对应的ASCI码

  • 从左往右依次比较
  • 如果第一位一样再比第二位,以此类推
  • 比较的少,了解即可

NaN不等于任何值,包括它本身
尽量不要比较小数,因为小数有精度问题
不同类型之间比较会发生隐式转换

  • 最终把数据隐式转换转成number类型再比较
  • 如果进行精确的比较更建议用=或!

1.4逻辑运算符

想判断一个变量num是否大于5且小于10

  • 错误写法:5 < num < 10
  • 正确写法:num > 5 && num < 10
    在这里插入图片描述
    1.5运算符优先级在这里插入图片描述

二、语句

2.1表达式和语句

  • 表达式

表达式是可以被求值的代码,JavaScript引擎会将其计算出一个结果
在这里插入图片描述

  • 语句

语句是一段可以执行的代码
比如:prompt()可以弹出一个输入框,还有if语句 for循环语句等等

区别:
表达式:因为表达式可以被求值,所以可以写在赋值语句的右侧

  • 表达式 num = 3 + 4

语句**:而语句不一定有值,所以比如alert() for和break等语句就不能被用于赋值。**

  • 语句 alert()弹出对话框 console.log()控制台打印输出

某些情况,也可以把表达式理解为表达式语句,因为它是在计算结果,但不是必须的成分(例如continue语句)

2.2分支语句

程序三大流程控制语句

  • 从上往下执行,这种叫顺序结构
  • 有时候需要根据条件执行代码,这种叫分支结构
  • 某段代码被重复执行,就叫循环结构
    在这里插入图片描述

分支语句

  • 分支语句可以让我们有选择性的执行想要的代码
  • 分支语句包含:
    • if分支语句
    • 三元运算符
    • switch语句

1.if语句

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

  • 单分支的使用语法:
    在这里插入图片描述
    括号内的条件为true时,进入大括号里执行代码
    小括号内的结果若不是布尔类型,会发生隐式转换为布尔类型
    如果大括号只有一个语句,大括号可以省略,但是,不提倡

  • 双分支if语法
    在这里插入图片描述

三元运算符

  • 使用场景:其实是比if双分支更简单的写法,可以使用三元表达式
  • 符号:?与:配合使用
  • 语法
    在这里插入图片描述
  • 一般用来取值

数字补0
需求:用户输入1个数,如果数字小于10,则前面进行补0,比如09 03
分析:
①:为后面页面显示时间做铺垫
②:利用三元运算符补0计算

<script>
    let num = prompt('请输入一个数')
    num  = num < 10 ? 0 + num : num
    document.write(num)
  </script>

switch语句

释义;

  • 找到跟小括号里面数据全等的case值,并执行里面对应的代码
  • 若没有全等 === 的则执行default里的代码
  • 例如:数据若跟值2全等,则执行代码2
    在这里插入图片描述
    1.switch case语句一般用于等值判断,不适合区间判断
    2.switch case一般需要配合break关键字使用,没有bread会造成case穿透

2.3循环语句

断点调试

  • 浏览器打开调试界面
    • 按F12打开开发者工具
    • 点到sources一栏
    • 选择代码文件
      在这里插入图片描述

while循环

循环:重复执行一些操作,while:在…期间,所以while循环就是满足条件期间,重复执行某些代码。
路径:

1、while循环基本语法
在这里插入图片描述
释义:

  • 跟if语句很像,都要满足小括号里的条件为true才会进入循环体执行代码
  • while大括号里代码执行完毕后不会跳出,而是继续回到小括号里判断条件是否满足,若满足又执行大括号里的代码,然后再回到小括号判断条件,直到括号内条件不满足,即跳出

2、while循环三要素:
循环的本质就是以某个变量为起始值,然后不断产生变化量,慢慢靠近终止条件的过程
所以,while循环需要具备三要素
1.变量起始值
2.终止条件(没有终止条件,循环会一直执行,造成死循环)
3.变量变化量(用自减或自增)
在这里插入图片描述
用户输入确定循环次数

<body>
  <script>
    let i = 1
    let num = +prompt('请输入循环次数')
    while (i <= num) {
      document.write(`我会循环${num}次 <br>`)
      i++
    }
  </script>

输出1到100的偶数和

<script>
    let i = 1
    let sum = 0
    while (i <= 100) {
      if (i % 2 === 0) {
        sum += i
      }
      i++

    }
    alert(`和为${sum}`)

3、循环退出

  • break:退出循环
  • continue:结束本次循环,继续下一次循环

三、综合案例

需求:用户可以存钱、取钱、查看余额和退出功能
分析:
①:循环的时候,需要反复提示输入框,所以提示框写到循环里
②:退出的条件是用户输入了4,如果是4,则结束循环,不再弹窗
③:提前准备一个金额预先存储一个数额
④:取钱则是减操作,存钱则是加法操作,查看余额则是直接显示金额
⑤:输入不同的值,可以使用switch来执行不同的操作

注意点:金额放在循环外面,不然每次都会重新赋值

<script>
    let balace = 2000
    while (true) {
      let caozuo = +prompt(`
      1.存钱
      2.取钱
      3.查询余额
      4.退出
      `)
      if (caozuo === 4) {
        break
      }
      switch (caozuo) {
        case 1:
          let jia = +prompt('请输入要存入的金额:')
          balace = balace + jia
          alert(`您要存入的金额为${jia}`)
          break
        case 2:
          let jian = +prompt('请输入要取的金额:')
          balace = balace - jian
          alert(`您要存入的金额为${jian}`)
          break
        case 3:
          alert(`您的余额为${balace}`)
          break
      }
    }
  </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值