一 、程序结构
顺序结构:按照移动顺序执行
分支结构:根据条件选择执行代码
循环结构:多次重复执行相同代码,直至循环结束
1.分支结构
1.1 单分支:if ( ) { }
( ) :条件(布尔值),true执行语句;false跳过执行语句;
{ } :执行语句。
var a = 15; if(a > 10){ console.log(a); }
1.2 双分支:if ( ) { } - else { }
( ) :条件(布尔值),true执行语句;false执行else语句;
{ } :执行语句。
//判断是否是闰年 if( txt.value % 4 == 0 && txt.value % 100 != 0 || txt.value % 400 == 0 ){ console.log("闰年"); }else{ console.log("平年"); }
1.3 多分支:if ( ) { } - else if ( ) { } - else { }
switch ( ) { } - case
//判断分数等级 var a = 85; if (a > 80){ console.log("优秀"); }else if(a > 60){ console.log("及格"); }else{ console.log("不及格"); }
//判断星期几 var a = 3; switch(a){ case 0: console.log("星期天");break; case 1: console.log("星期一");break; case 2: console.log("星期二");break; case 3: console.log("星期三");break; case 4: console.log("星期四");break; case 5: console.log("星期五");break; case 6: console.log("星期六");break; default: console.log("请输入0~2之间的数字"); }
注意:if ( ) 条件中会发生隐式转换
规则:数字:非0为true;字符:非空字符为true;undefined,NaN,null为false;对象(数组)都是true; 函数都是true
2.循环结构
循环三要素:
(1)计数器:记录循环执行的次数
(2)停止条件:决定什么时候停止
(3)计数器一定要改变
2.1 while ( ) { }
var i = 0; while(i < 10){ console.log("hello"); i++; }
2.2 do { } - while ( ) { }
( ) :条件(布尔值),true执行do{ }中的语句;false执行 { } 中的语句;
var i = 0; do{ console.log("这是do的语句---" + i); i++; }while(i < 10){ console.log("这是while的语句---" + i); }
2.3 for ( ) { }
// 3.计算1~100之间所有的偶数和 var sum = 0; for(var i=1;i<=100;i++){ if(i%2 == 0){ sum += i; } } console.log(sum)
2.4 死循环:无法通过自身控制结束的循环
// 4.篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,篮球的高度小于0.1米 var h = 5; var i = 1; while(true){ h = h * 0.3; if(h < 0.1){ // 停止循环??? console.log(i); break; } i++; }
2.5 循环中的关键字
break:立即结束当前循环,从执行到break,后面的代码都不再执行了
continue:立即跳过本次循环,从执行到continue,本次后面的代码都不再执行了
2.6 循环嵌套:多行多列的结构,使用循环的嵌套 (外层循环控制行,内容循环控制列)
// 在页面上打印九九乘法表 for(var i=1;i<=9;i++){ for(var j=1;j<=i;j++){ document.write( j + "*" + i + "=" + i*j + " " ); } document.write("<br>"); }