语句概述
在JavaScript中,语句使用分号(;)进行分割。可以每行编写一条语句,也可以一行编写多条语句。
- 建议每行编写一条语句,提高代码可读性
- JavaScript解释器是按照语句的编写顺序依次执行的
语句块
JavaScript中使用花括号({})表示一个语句块,语句块的作用是为语句分组,是代码清晰明了,提高可读性
{
var num = 100;
console.log(num);//100
}
空语句
空语句即为只有分号(;)没有语句内容。JavaScript解释器执行空语句时,不会有任何动作。
流程控制语句
JavaScript解释器是按照语句顺序依次执行,但也可以编写一些复杂的语句块,基本分为以下
- 顺序执行
- 选择执行
- 循环执行
条件语句
条件语句是指通过判断指定的计算结果,来决定是执行还是跳过指令的语句块
if语句
if语句是条件判断语句,也是最基本的流程控制语句
var result = 3
/*
if(条件表达式){
语句块-当条件表达式计算结果为true时才生效
}
*/
/*条件表达式一般为布尔类型,true生效,false则跨过语句块继续执行下面的代码
* 如果条件表达式计算结果不是布尔类型,则强制转换为布尔类型*/
if (result>2) {
console.log('化物语')
}
console.log('伪物语')//这是if语句块后面的的语句
var v //定义变量但不初始化值
if (v=23){//对变量初始化值,这样的写法也是有效的
console.log('输出')
}
if...else语句
if...else语句是条件判断语句,但和if语句有所不同
var result = true
/*
if(条件表达式{
语句块一
} else {
语句块二)
}
*/ /*先判断条件表达式
* true则执行语句块一
* false则执行语句块二
* 之后继续执行后面的代码*/
if (result){
console.log('化物语')
} else {
console.log('伪物语')
}
if...else的嵌套
if...else语句支持嵌套,但最好不要嵌套多层,影响可读性和运行
var result = 70;
/*在if或者else后面的语句块中都可以嵌入新的if...else语句
* */
if (result>90){
console.log('优秀');
} else {
if (result>80){
console.log('良好');
}else {
console.log('及格');
}
}
else...if语句
else...if语句允许多个条件判断
var result = 70
/*else...if语句是if...else语句的优化版
* 没有嵌套结构*/
if (result>90) {
console.log('优秀')
} else if (result>80) {
console.log('良好')
}else {
console.log('及格')
}
switch..case语句
switch...case语句是开关语句
var result = 2
/*
枚举 - 将计算结果可能的值尽量的罗列完整
switch (条件表达式) {
case 值一:
语句块一
case 值二:
语句块二
... ...
default:
语句块N
}
* 条件表达式 - 不一定是Boolean类型,计算结果分别与case语句的值进行比较
* 条件表达式计算结果与case语句的值是全等比较(既要比较值,也要比较类型)
* case语句 - 罗列可能的匹配值
* 对应的语句块最后添加 break 关键字 - 当执行对应的语句块之后,停止继续执行
* default语句 - 类似于if...else语句中的else语句
* 当以上所有case语句的值都不匹配时,默认执行default语句对应的语句块
* 注意 - 不是default语句不需要使用break关键字,而是default默认一般被编写在最后
*/
switch (result){
case 2://冒号是不能省略的
console.log('化物语')
break
case 3:
console.log('伪物语')
break
default:
console.log('以上结果不满足')
}
循环语句
循环语句是当判断条件的结果未达到预期值时,不断执行前面的一段代码
while语句
while语句是一个基本循环语句,类似于if语句
var result = 2;
/*
* while(条件表达式){
* 语句块}
* 必须通过变量值的改变控制条件表达式的计算结果
* 在循环中,至少要有依次false结束循环,否则是个死循环
* */
while (result<5){//先判断,再执行
console.log('这是一个while循环语句');
result++;//自增,每次加1 用于改变变量值
}
do...while语句
do...while语句也是一个基本循环语句,和whlie语句很像。
do...while语句和while语句的差别只是执行和判断的先后顺序
var result = 2
/*
* do {
* 语句块
* }while(条件表达式)
* */
do {//先执行,在判断
console.log('化物语')
result++
}while (result<5)
for语句
var result = 2
/*
* for(初始化表达式;条件判断表达式;循环控制表达式){
* 语句块
* }
* 初始化表达式-用于控制变量值
* 条件判断表达式-判断是否要结束循环
* 循环控制表达式-控制循环结束的节点
*
* for语句并不是一定要定义三个表达式,但;必须要有*/
for (result = 2;result<5;result++){
console.log('化物语')
}
/*for语句并不是一定要定义三个表达式,但;必须要有*/
var v = 0;
for (; v < 10; ) {
console.log(v);
v++
}
跳转语句
跳转语句可以将JavaScript代码的执行从一个位置跳到连一个位置
只能在循环结构使用
- break语句是中段语句,用于终止循环语句或者开关语句
- continue是连续语句,用于重新连接while、do...while、for语句
break语句
switch (result) {
case 1:
console.log('化物语')
break//由于当前值有预期值不相等,所以此处break无效
case 2:
console.log('伪物语')
break//由于当前值与预期值一致,break生效。中断循环
default:
console.log('猫物语')
}
continue语句
for (var i=0; i<9; i++) {
if (i == 4) {
/*continue;*/
}
console.log(i);
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。