文献种类:专题技术文献;
分支语句(循环语句)
开发工具与关键技术:VS JavaScript
作者:吴泽锋
撰写时间:2019年3月28日
8、分支语句
8.1、if 语句
if语句是只有当指定条件为 true 时,使用该语句来执行代码
语法:if(条件){ 条件成立时执行代码; }
var age = 20; if (age > 18) { console.log(“成年人”); }
var mycarrer=“web”; if(mycarrer==“web”){ document.write(“继续加油学习吧”); }
8.2、if…else 语句
if…else -当条件为 true 时执行代码,当条件为 false 时执行其他代码
语法: if(条件){ 条件成立时执行的代码 } else{ 条件不成立时执行的代码 }
var mycarrer = “HTML”; if (mycarrer == “HTML”)
{ document.write(“你面试成功,欢迎加入公司。”+"<.br/>"); }
else{ document.write(“你面试不成功,不能加入公司。”+"<.br/>"); }
var age = 20; if (age > 18) { console.log(“成年人”); }
else { console.log(“未成年人”); }
8.3、if…else if…else 语句,即多重判断(if…else嵌套语句)
使用该语句来选择多个代码块之一来执行,使用if…else嵌套语句。
语法: if(条件1){ 条件1成立时执行的代码 } else if(条件2){ 条件2成立时执行的代码 }
… else if(条件n){ 条件n成立时执行的代码 } else{ 条件1、2至n不成立时执行的代码 }
var mess = prompt(“请输入您的分数:”); if (mess != null)
{ if (mess >= 90){ document.write(“成绩优秀”); }
else if (mess >= 80 && mess < 90) { document.write(“成绩很好”); }
else if (mess < 80 && mess >= 70) { document.write(“成绩良好”); }
else { document.write(“同学,你需要加油哦”); }
} else { alert(“请输入分数”); }
if (age < 1){ console.log(“婴儿”); }
else if (age < 18) { console.log( “未成年人” ); }
else { console.log( “成年人” ); }
8.4、多种选择(Switch语句)
当有很多种选项的时候,switch比if…else使用更方便。
语法:switch(n) { case 1: 执行代码块 1 break; case 2: 执行代码块 2 break;
default: n 与 case 1 和 case 2 不同时执行的代码 }
语法说明: switch必须赋初始值,值与每个case值匹配。满足执行该 case 后的所有语句,
并用break语句来阻止运行下一个case。如所有case值都不匹配,执行default后的语句。
var score=3; switch(score){ case 0: case 1: case 2:
case 3: document.write(“加油!”); break; case 4: document.write(“很好”);
break; default: document.write(“非常棒”); break; }
8.5、重复重复(for循环)
如果希望一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的。
for语句结构:for ( 初始化变量; 循环条件; 循环迭代 ) { 循环语句 ; }
for循环一般写法 cars = [“BMW”, “Volvo”, “Saab”, “Ford”];
初始化任意(或者多个)值: for (var i = 0, len = cars.length; i < len; i++)
{ document.write(cars[i] + “<.br>”); }
省略初始化变量(比如在循环开始前已经设置了值时):
var i = 2, len = cars.length; for (; i<len; i++){document.write(cars[i]+"<.br>"); }其中循环条件(i<len;)前面的 ; 是不可以去掉的,否则会报错;
提示:如果循环条件返回 true,则循环再次开始,如果返回 false,则循环将结束。
如果您省略了语句 2,那么必须在循环内提供 break。
否则循环就无法停下来。这样有可能令浏览器崩溃。
for in循环: for (x in object) { 循环体; console.log(object[x]); }
8.6、反反复复(while循环)
和for循环有相同功能的还有while循环, while循环重复执行一段代码,
直到某个条件不再满足。
while语句结构: while(判断条件){ 循环语句 }
var num = 23; while (num < 30) { num = num + 1; document.write("<.br/>" + num); }
提示:如果忘记增加条件中所用变量的值,该循环永远不会结束。该可能导致浏览器崩溃。
8.7、来来回回(do…while循环)
do while结构的基本原理和while结构是基本相同的,但是它保证循环体至少被执行一次。
因为它是先执行代码,后判断条件,如果条件为真,继续循环。
do…while语句结构:do{ 循环语句(循环体); }while(判断条件)
var str=3; do{ str = str + 1 ; } while( str > 5 )
8.8、跳出循环break break 语句用于跳出循环
在for、do…while、while循环中使用break语句跳出循环后,会继续执行该循环之后的代码(如果有的话): 语句结构:for( 初始条件; 判断条件; 循环后条件值更新 )
{ if(特殊情况){ break; }循环代码 }
var x = “”, i = 0; for (i = 0; i < 10; i++) { if (i == 3) { break; }
document.write(x + "The number is " + i + “<.br>”); }
由于这个 if 语句只有一行代码,所以可以省略的花括号:{ break; }
8.9、继续循环continue
continue的作用是仅仅跳过本次循环,而整个循环体继续执行。即跳过循环中的一次迭代。
同样,由于这个 if 语句只有一行代码,所以可以省略的花括号:{ continue; }
语句结构:for( 初始条件;判断条件;循环后条件值更新 )
{if(特殊情况){ continue; } 循环代码 }
var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值
var i; for( i=0; i < mynum.length; i++ ){ if( mynum[i] < 60 )
{ document.write( “成绩不及格,不输出!” + “<.br>” ); continue; }
document.write( “成绩:” + mynum[i] + “及格,输出!” + “<.br>” ); }
var x = “”, i = 0; for (i = 0; i < 10; i++) { if (i == 3) { continue; }
document.write(x + "The number is " + i + “<.br>”); }
//区别:break 跳出整个循环 continue 跳出本次循环
借鉴于老师上课文档于W3Cchool