程序
程序是由一条条语句构成
程序 = 程序语句 + 数据结构 + 算法
var num; // 变量申明语句
num = 100; // 变量赋值语句
console.log('内容') // 控制台输出语句
console.log('内容',num) // 内容100
alert('内容') //函数调用语句
逻辑分支语句
js代码都是顺序执行的(从上到下),逻辑分支就是根据设定好的条件来决定要不要执行某些代码
IF 条件分支结构
if 语句
-
通过一个if语句来决定代码执行与否
-
语法: if (条件) {要执行的代码}
-
通过( )里面的条件是否成立来决定{ }里面的代码是否执行
//条件为true的时候执行{}里面的代码 if (true) { alert('因为条件是true,我会执行') } //条件为false 的时候不执行{}里面的代码 if (false) { alert('因为条件是false, 我不会执行') }
if else 语句
-
通过if条件来决定,执行哪一个{ }里面的代码
-
语法: if (条件) {条件为true的时候执行} e1se {条件为false的时候执行}
-
两个{ }内的代码-定有一 个会执行
//条件为true的时候,会执行if后面的{} if (true) { alert('因为条件是true, 我会执行') } else { alert('因为条件是true, 我不会执行') } //条件为false的时候,会执行else后面的{} if (false) { alert('因为条件为false, 我不会执行') } else { alert('因为条件为false, 我会执行') }
if else if ...语句
-
可以通过 if 和 else if 来设置多个条件进行判断
-
语法: if (条件1) {条件1为true 的时候执行} else if (条件2) {条件2为 true 的时候执行}
-
会从头开始依次判断条件
- 如果第一个条件为true了,那么就会执行后面的{}里面的内容
- 如果第一个条件为false,那么就会判断第二个条件,依次类推
-
多个{ },只会有一个被执行,一旦有一个条件为 true 了,后面的就不在判断了
//第一个条件为true,第二个条件为false,最终会打印“我是代码段1" if (true) { alert('我是代码段1') } else if (false) { alert('我是代码段2') } //第一个条件为true,第二个条件为true,最终会打印“我是代码段1" //因为只要前面有一个条件满足了,就不会继续判断了 if (true) { alert('我是代码段1') } else if (true) { alert('我是代码段2") }
if else if ... else 语句
-
和之前的 if else if ...基本-致,只不过是在所有条件都不满足的时候,执行最后 else 后面的{ }
//第一个条件为false, 第二个条件为false, 最终会打印“我是代码段3” //只有前面所有的条件都不满足的时候会执行else后面的{}里面的代码 //只要前面有一个条件满足了,那么后面的就都不会执行了 if (false) { alert('我是代码段1') } else if (false) { alert('我是代码段2") } e1se { alert('我是代码段3") }
SWITCH 条件分支结构
switch
语法:
switch (要判断的变量) {
case 情况1:
情况1要执行的代码
break
case 情况2:
情况2要执行的代码
break
case 情况3:
情况3要执行的代码
break
default:
上述情况都不满足的时候执行的代码
}
要判断某一个变量等于某一个值得时候使用
switch穿透
匹配相应分支,执行 case 分支中语句,如果没遇到 break 语句,继承执行下一个分支
switch (值) {
case 值1:
分支执行的代码
case 值2:
分支执行的代码
case 值3:
分支执行的代码
break //结束switch语句
default:
//默认分支执行代码
}
三元运算
-
三元运算,就是用两个符号组成一个语句
-
三元运算只是对 if else 语句的一个简写形式
-
语法:条件 ? 条件为 true 的时候执行:条件为 false 的时候执行
var age = 18; age >= 18 ? alert('已经成年') : alert('未成年')
单步调试
找程序错误 bug 的一种方式,让程序语句一条一条执行,观察程序语句执行输出情况
单步调试步骤:
- 断点
- 调试