JavaScript07 - 流程控制语句
if-else 语句
根据条件返回的结果(真或假或其它预定义的),来判断下一步要执行的语句。JavaScript 提供了两种条件判断语句:if...else
和 switch
。
条件可以是任何返回结果是 true
或 false
的表达式。如果条件表达式返回的是 true
,语句 1 会被执行;否则,语句 2 被执行。
如果有多个判断条件,可以使用 else if
来进行判断,就像下面这样:
switch 语句
执行顺序:
首先会判断第一个
case
后面的值是否与表达式的结果相等;如果相等,就会执行
case
后面代码,当遇到break
时,switch
语句停止执行;如果不匹配,接着判断下一个
case
后面的值;如果所有的
case
都不匹配, 程序会去执行default
后面的代码;switch 比较的值是===等关系。
注意:
default 语句并不是必须的,在不需要的时候可以不写。如果需要的话,应该写在 switch 语句的最后。
for 语句
语法:
执行顺序:
首先进行变量初始化(
var i = 0
);判断条件表达式是否成立(
i <= 10
);如果条件成立,则执行循环体内的代码,执行完之后,执行
i++
,让i
自增 1 ,接着再次判断条件表达式是否成立,如此循环往复,直到条件表达式不成立为止;如果条件不成立,则循环体内的代码不会执行,循环结束。
break 语句
break 语句可以在循环体或判断语句中,只要代码遇到 break,就会立马结束当前循环或者判断。
continue 语句
continue 语句的作用是终止本次循环,接着进行下一次循环。
示例代码:
while 语句
语法:
执行顺序:
首先判断条件表达式是否成立;
如果成立,执行大括号中的代码,然后再次判断条件表达式是否成立;
如果不成立,就不执行大括号中的代码,循环结束。
举例子
当条件表达式结果为 true,会一直执行 while 循环体内的代码。
当条件表达式的结果为 false,while 循环不再执行。
do-while 语句
语法:
执行顺序:
程序一开始,直接进入循环体内,执行一遍循环体内的代码;
判断条件表达式是否成立,如果条件成立,那么继续执行循环体内的代码;
如果条件表达式是否成立,那么循环体内的代码就不再执行,循环结束;
注意:do-while 循环在初始条件为 false 的情况下会比 while 循环多执行一次循环体内的代码。
布尔类型的隐式转换
流程控制语句会把后面的值隐式转换成布尔类型
转换为 true 非空字符串 非 0 数字 true 任何对象
转换成 false 空字符串 0 false null undefined
版权声明: 本文为 InfoQ 作者【桃夭十一里】的原创文章。
原文链接:【http://xie.infoq.cn/article/dddcc3a97b53d0f7e6450b42b】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论