JavaScript基础之流控制语句

来源:互联网 发布:网络之神级炼妖师 编辑:程序博客网 时间:2024/05/18 00:06

JavaScript中有一种语句叫做流控制语句,它能控制语句的开始、结束,控制程序的运行。


if语句

if语句是常用的一种控制语句,它的格式是:

if (表达式) {语句1} else {语句2}


其中,表达式的值不一定是布尔值,JavaScript的Boolean()会将表达式转换成布尔值,若转换成的布尔值结果为true,则执行语句1,相反,若布尔值为false,则执行语句2.

var a = 2;if (a > 0) {    alert("a的值大于0"); /* 弹出"a的值大于0"  */} else {    alert("a的值小于0");}

如上,建议用代码块将要执行的语句包括起来,即使语句只有一行。这样做是为了消除人们的误解,否则可能让人分不清在不同条件下要执行哪些语句。


while语句

while是一种前测试循环语句,格式为:

while (表达式) {循环体}


在执行循环语句前,有个出口语句表达式,若表达式的值为true,则会循环执行语句,至到表达式的值为false为止,也就是说,只有当表达式的值为true时,才会执行语句,不管是一次也好,还是多次执行也罢。


var a = 0;while (a < 3) {a++}

当a的值小于3时,就会执行中括号里的语句a++,直到a的值大于等于3时,会中跳出循环,即,当a的值为3时,跳出循环。


do-while

do-while是一种后测试循环语句。


格式:

do {循环体} while (表达式)


do-while循环语句与while循环语句相似,只是有一个最大不同点在于:do-while循环语句中,不管表达式的值是不是true,循环语句都会执行一次,常用于至少要执行一次的循环语句中。

var i = 0;do {i++} while (i <3) //i的最终值为3

不管while中的表达式成不成立,都会执行一次i++,所以最终结果i的值至少为1。


for语句


for循环是常用的一种,格式为:

for (var i = 0; i < count; i++ ) {循环体}


以上定义了变量i并初始化为0,只有当表达式i < count为true时,才会进入for循环,因此不一定会执行语句,如果执行语句后,一定会对表达式i++求值,求值后,再与count作比较,若此时i < count依然成立,则再次进入for循环,依此类推,若不成立,跳出for循环。

for (var i = 0, i < 3; i++) {console.log(i)}

输出结果:0 1 2 3


for语句有三种书写形式:

第一种:

for (var i = 0; i < count; i++) {循环体}

第二种:

var i;for (i = 0; i < count; i++) {循环体}

第三种:

var i = 0;for (; i < count;) {循环体; i++}



for in语句


for in语句是一种精准的迭代语句,用于枚举对象的属性。格式:

for (var i in object) {循环体}


定义一个变量i,用于遍历object对象的属性,直到遍历完对象的所有属性为止,遍历出的属性名的顺序是不可测的


若对象的值是null或undefined,则不执行循环体。



switch语句

switch语句又称开关语句,格式:


switch (a) {    case value: startment1            break;      case value: startment2            break;     case value: startment3            break;     default:             startment4    }


其中a可以是各种数据类型,case后的value可以是常量、变量、也可以是表达式,如果a等于这个值value,则会执行后面的表达式startment,执行后,遇到break会跳出siwtch语句,如果省略break,不管后面的value是不是等于a的值,都会被执行,当所有的value都不等于a的值时,会执行default后面的语句。


在switch中可以合并两个同种情况:

switch (a) {    case value:      case value: alert("startmen1 or startment2")            break;     case value: startment3            break;     default:             startment4    }


如上,可以将两种情况合并一起。



break语句与continue语句


在循环语句中,遇到break语句则会跳出循环语句,去强制执行循环语句后面的其它语句。


在循环语句中,遇到continue语句则会跳出本次循环,从循环的顶部继续执行。


1 0
原创粉丝点击