xaoyege 2019-06-28
在JavaScript中,语句使用分号(;)进行分隔。可以在一行编写一条语句,也可以在一行编写多条语句分类
件语句:JavaScript解释器根据一个值来判断是执行还是跳过指定语句。
循环语句:JavaScript解释器根据一个值判断是否重复执行指定语句。
跳转语句:使JavaScript解释器跳转到指定语句。
建议:
建议每一行编写一条语句,以便于提高代码的阅读性。
JavaScript解释器按照语句的编写顺序依次执行。
JavaScript中使用一对花括号({})表示一个语句块。使用语句块为语句进行分组,这样语句的结构清晰明了。
注意:
语句块的结尾不需要分号。
语句块的行都有缩进,但并不是必须的。
语句中声明变量是全局变量。
空语句运行包含0条语句,JavaScript解释器执行空语句,不会执行任何动作。如果有特殊的目的使用空语句,最好说明这条空语句是有用的。
条件语句:条件语句就是通过判断指定的计算结果,来决定是执行还是跳过指定的语句块。如果说JavaScript解释器是按照代码的路径执行的话,那么条件语句就是这条路径上的分岔点,代码执行到这里必须选择其中一条路径继续执行。
if语句是条件判断语句,当if后面条件判断是true是则选择执行语句块当结果为false时会跳转语句块,继续之下后面的代码。
//if语句的应用 var a = true; /*if语句 * if(条件表达式){ * 语句块} 当表示式的输出结果为true时才执行 * 作用:来控制是否执行指定的语句 * 结果: 一般为Boolean类型的值 true/false * 问题: 当条件表达式计算的结果不是Boolean类型 * 那么将会强行的转化为Boolean类型再进行判断*/ if (a) { console.log('阿伦艾佛森');}//布尔类型 if (1&&1){console.log('为了十月六号那一天') }//或与非运算符的if语句; var a //定义变量但是不初始化变量 if( a='画面'){ console.log('if条件语句')8 }//等价于以下写法 a ='画面' ;
跟据if语句当条件判断语句值为true时选择第一个语句块, 当值为false时选择另一个执行块
var a = true ; /*if...else if (条件表达式){第一个语句块} else{第二个语句块}*/ if (a) { console.log('输出第一个语句块');} else{ console.log('输出第二个语句块')}
-if语句的注意事项,
/* if语句与if...else语句 * 对应的语句块的大括号"{}" -> 允许被省略的 * 前提 - 当前语句块中只存在一条语句时 * 省略大括号"{}"时,JavaScript默认认为后面的第一条语句是被控制的语句块内容 * 结论 - 建议按照语法规则编写 */ if (result) console.log('这是if语句执行的语句块1...'); console.log('这是if语句执行的语句块2...'); console.log('这是if语句执行的语句块3...'); console.log('这是if语句执行完毕后的内容...');
-条件运算符与if语句。
var boo = false; if (boo) { console.log('这是语句'); } else { console.log('这是语句'); } console.log('if语句完毕'); boo ? console.log('条件运算符1') : console.log('条件运算符2'); //条件运算符和条件语句可以互相转换, //条件运算符的性能更高;
var score = 66;//定义并赋值一个变量 if (score > 88) { console.log('优秀');//当第一个条件运算符为true时 进入嵌套的if。。else。。语句 } else {//镶嵌一个if。。else if (score > 77) { console.log('良好'); } else { console.log('及格');//结果为及格 } } //嵌套的缺点 嵌套的层数越多性能越差 //利用else。。。if ,,可以解决嵌套的问题 并且没有任何限制 var score = 66; //定义并赋值变量 if (score > 88) { console.log('优秀'); } else { if (score > 77) { console.log('良好'); } else { console.log('及格'); } }
var result = '0'; /* 枚举 - 将计算结果可能的值尽量的罗列完整 switch (条件表达式) { case 值一: 语句块一 case 值二: 语句块二 ... ... default: 语句块N } * 条件表达式 - 不一定是Boolean类型,计算结果分别与case语句的值进行比较 * 条件表达式计算结果与case语句的值是全等比较(既要比较值,也要比较类型) * case语句 - 罗列可能的匹配值 * 对应的语句块最后添加 break 关键字 - 当执行对应的语句块之后,停止继续执行 * default语句 - 类似于if...else语句中的else语句 * 当以上所有case语句的值都不匹配时,默认执行default语句对应的语句块 * 注意 - 不是default语句不需要使用break关键字,而是default默认一般被编写在最后 * */ switch (result) { case 0: console.log('这是数字0'); break; case 1: console.log('这是数字1'); break; default: console.log('以上结果无一满足'); }
var result = 1; /* while (条件表达式) { 语句块 } * 必须通过一个变量值的改变,控制条件表达式的计算结果 * 在循环的过程中,至少有一次计算结果为false -> 结束循环 * 如果没有这样的一个变量的话 -> 循环叫做死循环 */ var result = 1; while (result <= 10) { console.log('这是while循环语句执行...'); result++;// 改变变量的值,至少有一次让条件表达式计算的结果为false } console.log('这是while循环语句执行完毕后...'); //do语句 var result = 0; /* do { 语句块 } while (条件表达式); */ do { console.log(result); result++; } while (result <= 10);
var v = 0; while (v < 10) { console.log(v); v++; } console.log(v); /* for (初始化表达式; 条件判断表达式; 循环控制表达式) { 语句块 } * 初始化表达式 - 用于初始化控制循环的变量 * 条件判断表达式 - 用于判断是否要结束循环 * 循环控制表达式 - 用于控制结束循环的节点 注意: * for语句的语法要求并不强制必须定义以上三个表达式 * 一旦省略三个表达式的话,表达式的分隔符必须存在 */ /*for (var v = 0; v < 10; v++) { console.log(v); }*/ var v = 0; for (; v < 10; ) { console.log(v); v++ }
/* 跳转语句 * 作用 - JavaScript代码从指定位置跳转到另一个指定的位置 * 场景 - 跳转语句只能用于循环执行结构,而不能用于条件判断结构 * 注意 - switch...case语句中使用的break,并不是break的用法,而是switch语句的用法 * 循环语句中的跳转语句 * break语句 - 表示结束整体循环 * continue语句 - 表示结束本次循环 */ /*var result = 0; switch (result) { case 0: console.log(0); break; case 1: console.log(1); break; default: console.log(2); }*/