label语句和break continue的使用(高程第三章)

时间:2020-12-28 15:48:02
 break&&outermost
var num = 0;
outermost:
for(var i=0;i<10;i++){
  for(var j=0;j<10;j++){
    if (i==5&&j==5) {
      break outermost;
    }//i=5 j=4
    num++
  }
}
console.log(num);//

2:continue&&outermost  这种情况下会退出内部循环,执行外部循环,也就意味着内部循环少执行了5次

var num = 0;
outermost:
for(var i=0;i<10;i++){
for(var j=0;j<10;j++){
if (i==5&&j==5) {
continue outermost;
}
num++
}
}
console.log(num);//

3:switch case语句,假如有多个if else 用switch case可以精准定位到满足条件的语句,性能好

var num = 10;
switch (num){
case "10":
console.log("小于0");
break;
case 10:
console.log("执行的是全等操作");
//break;
//没有break继续往下执行
case num==10:
console.log(10);
break;//答案为 "执行的是全等操作"&&10
case num > 10:
console.log("10");
break;
default:
console.log("100");
}

4:通过arguments对象的length属性可以获知有多少个参数传递给函数,arguments对象只是与数组类似,并不是Array实例

function add(){
console.log(arguments.length);
}
add(10,20);//
add(10)// function doAdd(num1,num2){
"use strict";//严格模式下值为28;也就是说无法改变本身带的参数值
arguments[1] = 10;//非严格模式下值为18
console.log(arguments[0]+num2);
}
doAdd(8,20)//