####条件控制 if(条件){//语句块}如果条件(小括号里面的)满足true。那么才会执行大括号里面的代码,如果条件不满足(false),那么不执行,注意:有可能代码不会执行。 例如: if(3>11){ document.write('hello '); } if(条件){//语句}else{//语句} 如果条件满足,就执行语句,如果不满足,就执行else语句注意:这个语句必定会被执行。 例如: var username='king'; if(username=='king'){ document.write('hello king'); }else{ document.write('hello world'); } 格式:if(条件){//语句}else if(条件){//语句}else{//语句} 如果条件满足,就执行语句,如果不满足,就直说else的语句注意:必定会有语句被执行,else if 只能分开写,不能连写,elseif 是错误的。 例如: var x=11; if(x==1){ document.write('aaa'); }else if(x==2){ document.write('bbb'); }else if(x==3){ document.write('ccc'); }else{ document.write('以上表达式都为false执行的代码段'); }
switch语句
格式:
switch(exp){
case 值1:
执行的代码段;
break;
case 值2:
执行的代码段;
break;
...
default:
执行的代码段;
break;
}
case关键字可以跟随任意的表达式,但是使用常量是最常见的用法。在switch语句中,对每个case的匹配操作实际上是 "="恒等运算符比较,而不是"",因此,表达式和case的匹配不会做任何类型转换。
例如:
var i=1;
switch(i){
case '1':
document.write('king');
break;
case 1:
document.write('aa');
break;
case 2:
document.write('bb');
break;
default:
document.write('没有匹配到的时候执行的代码段');
}
while语句
格式1:当表达式成立,就执行循环体,执行循环体之后,又会回到表达式判断的地方,继续判断表达式是否成立,如果成立,继续执行循环体,如果不成立,跳出循环【不执行循环】
while(exp){
循环体;
}
例如:
var i=1;
while(i<=10){
document.write(i);
}
格式2:先执行一次do里面的循环体,改变循环变量,判断条件是否成立,如果成立,那么继续执行do里面循环体。
do{
循环体;
}while(exp);
例如:
var i = 1;
do{
document.write(i);
i++
}while(i < 10)
for循环
格式:
for(exp1;exp2;exp3){
循环体;
}
exp1:无条件的执行第一个表达式
exp2:是判断是否能执行循环体的条件
exp3:做增量的操作
例如:
for(var i=1;i<=10;++i){
document.write('hello
');
}
break结束for循环
例如:
for(var i=1;i>=0;++i){
if(i>100){
break;//结束for循环
}
document.write(i+'
');
}
continue:代表跳过当次循环,进入下次循环
例如:
for(var i=1;i<=10;i++){
if(i==3){
continue;
document.write('hello king');
}
document.write(i+'
');
}
嵌套使用
for循环的嵌套
for(var i=1;i<=3;i++){
document.write('外层循环循环第'+i+'次的结果<br/>');
for(var j=1;j<=2;j++){
document.write('内层循环第'+j+'次的结果<br/>');
}
document.write('<hr/>');
}
例如:求1~100之间的偶数和
sum=0;
for(var i=1;i<=100;i++){
if(i%2==0){
sum+=i;
}
document.write('1~100之间偶数的和为:'+sum+'<hr/>');
例如:打印乘法口诀
输出倒置99乘法表
document.write("<table border='1' cellpadding='0' cellspacing='0' bgcolor='aqua' width='80%'>");
for(var i=9;i>=1;i--){
document.write('<tr>');
for(var j=1;j<=i;j++){
document.write('<td>'+i+'x'+j+'='+(i*j)+'</td>');
}
document.write('</tr>');
}
document.write('</table>');
对象的遍历:for (var b in obj)
例如:
var obj = {name:'js',age:20}
for (var b in obj){
console.log(b,obj[b]);
}
作业
(分支结构)定义一个变量表示“分数” 并给其赋值,在页面中是根据分数高低不同输出如下文字:
优秀(>=90),良好(>=80),中等(>=70),及格(>=60),不及格(其他情况)。
——使用if和switch两种方法来实现。
附:取整数值的方法为: s = parseInt(x)——将x取整为一个整数,比如var x = 12.7; s = parseInt(x); 则此时s的值为12
(分支结构)根据一个人的存款的多少决定使用什么交通工具:
如果我有10万元以上,就买小汽车上班
或者如果我有5000元以上,我就买摩托上班,
或者如果我有300元以上,我就买自行车上班,
或者如果我有20元以上,我就坐公交上班,
否则,我就只好步行上班
提示:使用一个变量表示其存款数,对该变量进行判断以输出所采用的交通工具
(循环)输出1-100之间能被3整除的数。
(循环)计算1-1000之间能被3整除的偶数的个数。
(循环)使用星号输出倒金字塔图案(行数由初始变量n确定):