JavaScript中的语句

  • do-while语句

在表达式求值之前,循环体内的的代码至少被执行一次;

// 以下代码在执行前置条件运行前,先执行console.log语句,在控制台中输出:我先执行
do{
    console.log("我先执行");
}while(1 > 2)
  • for-in语句

用来枚举对象的属性,当改对象有属性为null或undefined时,就跳出循环,并且枚举的属性是随机的

// 枚举obj对象的所有属性
// 执行下列代码后,结果为a、b或者b、a
var obj = {
 a : "a",
 b : "b"
}
for(item in obj){
    console.log(item);
}
  • break和continue语句

都是用于在循环中精确地控制代码的执行。其中break语句会立即退出循环,强制执行循环后面的语句。而continue语句虽然也是退出循环,但退出循环后会从循环顶部继续执行(即跳出本次循环,进行下一次的循环)

  • label语句

在代码中添加标签,以便未来使用,配合循环语句和break、continue语句使用:

如:配合break使用

 // 以下代码输出的值为95,break跳出循环是从当前循环跳到外部循环,然后继续执行
var num = 0;
for(var i = 0; i < 10; i++){
    for(var j = 0; j < 10; j++){
        if(i == 5 && j == 5){
            break;
        }
    }
    num++;
}
console.log(num);

// 以下代码输出的值为55,break跳出循环是从当前循环直接跳到外部aa(label语句)环境,但不继续进入循环

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

如:配合continue使用

// 以下代码输出的值为99,continue跳过此次执行,继续进行循环
var num = 0;
for(var i = 0; i < 10; i++){
    for(var j = 0; j < 10; j++){
        if(i == 5 && j == 5){
            continue;
        }
    }
    num++;
}
console.log(num);

// 以下代码输出的值为95,continue直接跳出此煦暖,跳至aa处,继续进行外部循环
var num = 0;
aa:
    for(var i = 0; i < 10; i++){
        for(var j = 0; j < 10; j++){
            if(i == 5 && j ==5){
                continue aa;
            }
        }
        num++;
    }
console.log(num);

注意:尽可能不要是用label语句,这个语句会导致难以调试

  • with语句

将代码的作用域设置到一个特定的对象中,主要是为了简化多次编写同一个对象的工作

注意:严格模式下不允许使用with语句,否则会视为语法错误;

注意:大量使用with语句会导致性能下降,同时也会给调试代码造成困难,在开发大型应用程序时,尽可能不使用with语句

  • switch语句

基本语法:

switch(expression){
    case value1:
        statement;
        break;
    case value2:
        statement;
        break;
    default:
        statement;
}

switch语句中的每一种情形(case)的含义是:“如果表达式等于这个值,则执行后面的语句(statement)。而break关键字会导致代码执行跳出switch语句。如果省略break关键字,就会导致执行完当前case后,继续执行下一个case。最后的default关键字用于表达值不匹配任何一种情形的时候,执行的代码”

技巧1:当多个case都执行同一条代码时,可以将多个case合并起来(即从上至下排列),不写break,直至最后一个case再写;

技巧2:当使用在函数的最后一条语句时,可以使用return case对应执行的代码进行代码的简化

技巧3:当在switch语句中使用比较操作时,传入的值为布尔值;

注意:在switch中的所有比较都是使用全等操作,不会发生类型转换

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值