JavaScript 语句
表达式和语句
- 表达式
- 是可以被求值的代码,JavaScript 引擎会将其计算出一个结果。
- 因为表达式可被求值,所以它可以写在赋值语句的右侧。
- 语句
- 是一段可以执行的代码。
- 不一定有值,所以比如
alert()、for和break等语句就不能被用于赋值。
分支语句
分支语句可以根据条件判定真假,来选择性的执行想要的代码。分支语句包含:
- if 分支语句
- 三元运算符
- 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多分支语句功能相同。
注意:
- switch case语句一般用于等值判断, if适合于区间判断
- switchcase一般需要配合break关键字使用 没有break会造成case穿透
- 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++ // 变量自增否则造成死循环
}
循环三要素:
- 初始值 (经常用变量)
- 终止条件
- 变量的变化量
例如:
中止循环
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
}
}