JavaScript(五)| 青训营笔记

71 阅读3分钟

JavaScript 语句

表达式和语句

  • 表达式
    • 是可以被求值的代码,JavaScript 引擎会将其计算出一个结果。
    • 因为表达式可被求值,所以它可以写在赋值语句的右侧。
  • 语句
    • 是一段可以执行的代码。
    • 不一定有值,所以比如 alert()forbreak 等语句就不能被用于赋值。

分支语句

分支语句可以根据条件判定真假,来选择性的执行想要的代码。分支语句包含:

  1. if 分支语句
  2. 三元运算符
  3. switch 语句

1. if 分支语句

if(条件表达式) {
  // 满足条件要执行的语句
}
  • 小括号内的条件结果是布尔值,为 true 时,进入大括号里执行代码;为 false,则不执行大括号里面代码。
  • 小括号内的结果若不是布尔类型时,会发生类型转换为布尔值,类似Boolean()。
  • 如果大括号只有一个语句,大括号可以省略。
<script>

    // 1. 用户输入
    let score = +prompt('请输入数字')
    // 2. 进行判断输出
    if (score >= 700) {
      alert('恭喜')
    }
    console.log('-----------------')

  </script>

if 双分支语句

如果有两个条件的时候,可以使用 if else 双分支语句。

if (条件表达式){
  // 满足条件要执行的语句
} else {
  // 不满足条件要执行的语句
}
 <script>
    // 1. 用户输入
    let uname = prompt('请输入用户名:')
    let pwd = prompt('请输入密码:')
    // 2. 判断输出
    if (uname === 'pink' && pwd === '123456') {
      alert('恭喜登录成功')
    } else {
      alert('用户名或者密码错误')
    }
  </script>

if 多分支语句

使用场景: 适合于有多个条件的时候。

 <script>
    // 1. 用户输入
    let score = +prompt('请输入成绩:')
    // 2. 判断输出
    if (score >= 90) {
      alert('成绩优秀')
    } else if (score >= 70) {
      alert('成绩良好')
    } else if (score >= 60) {
      alert('成绩及格')
    } else {
      alert('成绩不及格')
    }
  </script>

2. 三元运算符(三元表达式)

一些简单的双分支,可以使用三元运算符(三元表达式),写起来比 if else 双分支更简单,符号 ?: 配合使用。

条件 ? 表达式1 : 表达式2

例如:


// 1. 用户输入 
let num = prompt('请您输入一个数字:')
// 2. 判断输出- 小于10才补0
// num = num < 10 ? 0 + num : num
num = num >= 10 ? num : 0 + num
alert(num)

3. switch语句

适合于有多个条件的时候,也属于分支语句,大部分情况下和 if多分支语句功能相同。

注意:

  1. switch case语句一般用于等值判断, if适合于区间判断
  2. switchcase一般需要配合break关键字使用 没有break会造成case穿透
  3. if 多分支语句开发要比switch更重要,使用也更多
// switch (表达式) {
//   case 值1:
//     代码1
//     break

//   case 值2:
//     代码2
//     break
//   ...
//   default:
//     代码n
// }
<script>
  switch (2) {
    case 1:
    console.log('您选择的是1')
    break  // 退出switch
    case 2:
    console.log('您选择的是2')
    break  // 退出switch
    case 3:
    console.log('您选择的是3')
    break  // 退出switch
    default:
    console.log('没有符合条件的')
  }
</script>

断点:在某句代码上加的标记就叫断点,当程序执行到这句有标记的代码时会暂停下来。断点调试可以帮助更好的理解代码运行,工作时可以更快找到bug。

循环语句

重复执行指定的一段代码,主要有以下两类:

1.while循环 2.for 循环

1. while循环

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

while (条件表达式) {
   // 循环体    
}

例如:

// while循环: 重复执行代码

// 1. 需求: 利用循环重复打印3次 '你好'
let i = 1
while (i <= 3) {
  document.write('你好~<br>')
  i++   // 变量自增否则造成死循环
}

循环三要素:

  1. 初始值 (经常用变量)
  2. 终止条件
  3. 变量的变化量

例如:

中止循环

  • break 中止整个循环,一般用于结果已经得到, 后续的循环不需要的时候可以使用(提高效率)
  • continue 中止本次循环,一般用于排除或者跳过某一个选项的时候
<script>
    let i = 1
    while (i <= 5) {
       console.log(i)
       if (i === 3) {
         break  // 退出循环
       }
       i++
     }
  </script>
<script>
    let i = 1
    while (i <= 5) {
      if (i === 3) {
        i++
        continue
      }
      console.log(i)
      i++
    }
  </script>

无限循环

  • 1.while(true) 来构造“无限”循环,需要使用 break 退出循环。
  • 2.for(;;) 也可以来构造“无限”循环,同样需要使用 break 退出循环。
// 无限循环  

 1. while(true) 无限循环
 while (true) {
   let love = prompt('你爱我吗?')
   if (love === '爱') {
     break
   }
 }
// 无限循环  

// 2. for(;;) 无限循环
for (; ;) {
  let love = prompt('你爱我吗?')
  if (love === '爱') {
    break
  }
}