js入门第二篇之流程控制语句
表达式语句: 一个表达式可以产生一个值,有可能是运算、函数调用 字面量 表达式可以放在任何需要值的地方。
语句: 语句可以理解成一个行为,循环语句和判断语句就是典型的语句,一个程序有多个语句组成。
流程控制的三种结构:
顺序结构: 从上到下依次执行
分支结构: 根据不同的情况,执行对应的代码
循环结构: 重复做一件事情
一、流程控制
1. if语法
if 语句 if (条件表达式) { 执行语句; } if (条件表达式) { 成立执行语句; } else { 否则执行语句; } if (条件表达式1) { 成立执行语句; } else if (条件表达式2) { 成立执行语句2; } else { 最后默认执行语句; } 三元运算符 1. 表达式1 ? 表达式2 : 表达式3 var num1 = 13; var num2 = 4; console.log(num1 > num2 ? num1 : num2);
2. 分支结构switch
判断输入的表达式和值是否是相等 (这里判断的是三个等) switch (表达式) { case 常量1: 语句; break; case 常量2: 语句; break; ... case 常量n: 语句; break: defalut: 语句; }
switch小案例
var day = 5; switch (day) { case '1': console.log('Monday'); break case '2': console.log('Turseday'); break; default: console.log('What are you doing'); }
二、 循环结构
1. while 语法
1. 当循环条件为true 执行循环 2. 当循环条件为false 结束循环 while (循环条件) { 循环体 } var i = 1; while (i <= 100) { console.log(i); i++ }
do while 和while的区别
while: 先判断条件 在执行语句 如果条件满足就执行
do while: 先执行语句 在判断条件 条件满足执行语句1 否则执行2
2. do while语法
do { 循环体; } while (循环条件);
do while案例
rompt 让用户交互输入的 相当于python里面的input do { var msg = prompt('你到底爱不爱我? ', '请输入yes/no'); } while (msg !== 'yes'); console.log('哈哈哈')
3. for 循环
for循环的表达式之间用;分号隔开 for (初始化表达式1; 条件表达式2; 自增表达式) { 循环体 }
while和do while 一般用来解决无法确认次数的循环
for 用于能确定循环次数的情况 比较方便
for表达式可以省略 分号不能省略
案例1: 打印三角形
var str = ''; for (var i =0; i<10; i++) { for (var j =i; j<10; j++) { str = str + '* '; } str = str + '\n'; } console.log(str);
案例2: 打印正方形
var str = ''; for (var j =0; j<10; j++) { for (var i = 0; i<10; i++) { str = str +'* '; } str = str + '\n'; } console.log(str);
案例3: 打印九九乘法表
var str = ''; for (var i =1; i <= 9; i++) { for (j=i; j<=9; j++) { str += i + '*' + j + '=' + i*j + '\t'; } str = str + '\n'; } console.log(str) break 打破循环 for (var i =50; i<=200; i++) { if (i % 7 === 0) { console.log(i); break; } }
三、continue和break
1. continue 结束当次循环 继续下一次
var sum = 0; for (var i=1; i<=100; i++) { if (i%10 === 3) { console.log(i); continue; } sum += i; } console.log(sum);
斐波那契数列例子:
var n1 =1; var n2 = 1; var n3; for (var i = 3; i <=12; i++) { n3 = n2 + n1; n1 = n2; n2 = n3; } console.log(n3);
调试debug
调式debug
调试的目的是确定错误的原因和位置,并解决错误
错误
语法错误
逻辑错误
过去调试js的方式
alert()
console.log()
断点调试
浏览器中按F12 --> source 找到需要调试的文件 --> 在程序的某一行设置断点
break待补充......
We are down, but not beaten. tested but not defeated.