流程控制语句
var a = 1
if(a === 1){
console.log('ok')
}else {
console.log('not ok')
}
if语句可以单独使用,也可以和多个else连续使用
var a = 1
if(a === 1){
console.log('ok')
}else if(a === 2) {
console.log('not ok')
}else if(a === 3){
console.log('good')
}else{
console.log('but')
}
switch case
var score = 99
switch(score) {
case 100:
console.log('100分')
break;
case 99:
console.log('99分')
break;
default:
console.log('其他分数')
}
var score = 100
switch(true) {
case score == 100:
console.log('perfect')
break;
case score >= 90:
console.log('nice')
break;
case score >= 80:
console.log('good')
break;
default:
console.log('bad')
}
while循环
while(expression){
statement;
}//圆括号内的属性如果是true,循环一直执行,值为false时循环停止
例如:
var i = 10;
while(i > 0){
console.log(i);
i--;
}
do while循环
do{
statment;
}while(expression);
先执行一次代码,再判断while循环是否为true
例如:
var i = 4;
do{
console.log(i);
i--
}while(i > 5);//4 < 5 执行一次后循环停止
for循环
for(var i = 10; i > 0; i--){
console.log(i);
}//先给i赋值10,再判断i是否>0,如果是的话就执行console.log(i)。然后再执行i--,执行完成后进行判断
关于for循环的一点细节
如下函数
var navbar = document.querySelector("#tip")
var child = document.createElement("div")
for(var i=0; i<3; i++){
var result = document.createTextNode("hello"+i)
child.appendChild(result)
navbar.append(child)
}
输出结果如下
本函数在id为tip的标签下创建了一个div,在div下for循环运行3次,div函数中输出3段result的结果。
运行如下代码
var navbar = document.querySelector("#tip")
for(var i=0; i<3; i++){
var child = document.createElement("div")
var result = document.createTextNode("hello"+i)
child.appendChild(result)
navbar.append(child)
}
结果如下
此时,child在for循环内赋值,则出现不同结果
break和continue
break语句和continue语句都具有跳转作用,可以让代码不按既有的顺序执行。
break语句用于跳出代码块或循环。
var i = 0;
while(i < 100) {
console.log('i当前为:' + i);
i++;
if (i === 10) break;
}
上面代码只会执行10次循环,一旦i等于10,就会跳出循环。
continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环。
var i = 0;
while (i < 100){
i++;
if (i%2 === 0) continue;
console.log('i当前为:' + i);
}
或
for(var i = 0; i < 100; i++){
if(i % 2 === 0)continue;
console.log(i);
}
上面代码只有在i为奇数时,才会输出i的值。如果i为偶数,则直接进入下一轮循环。
如果存在多重循环,不带参数的break语句和continue语句都只针对最内层循环。
switch case 语句中的 break 有什么作用
Break 语句它用于跳出 switch() 语句。
break 语句可用于跳出循环。
break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话):
for (i=0;i<10;i++)
{
if (i==3)
{
break;
}
x=x + "The number is " + i + "<br>";
}
如果不用break语句终止循环,switch()语句的内容会全部执行。