当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JavaScript 中的break、continue、return的用法和区别

JavaScript 中的break、continue、return的用法和区别

2020年07月12日  | 移动技术网IT编程  | 我要评论

JavaScript 中的break、continue、return的用法和区别

  • 代码块: 基本上是{}大括号之间
  • 这三个关键字可以从用法上,分为两类;
  • break、continue主要用于循环语句中。
    • break 立即停止当前语句,并跳出当前代码块,执行break代码块后面的代码。
    • continue 的作用是进入下一个迭代, 所以 continue 只能用于循环的代码块。。
  • return 则是用于在函数中返回特定的值。

1、break

  • break 在一些计算机编程语言中是保留字,其作用大多情况下是终止所在层的循环。

在循环中使用break

  • 当break语句用于do-while、for、while循环语句中时,可使程序终止循环。

  • 在多层循环中,一个break语句只向外跳一层。

    for(var j=0;j<2;j++){
        for (var i = 0; i < 5; i++) {
            // console.log(i)
            if (i == 3) {
                console.log(i+"等于3,跳出循环")
                break;
            }
            console.log(i+"不等于3,继续循环");
        }
        console.log("break 在多个嵌套循环中,只能影响到break所在的循环,不会影响到");
    }
    console.log("后续代码");
    

在这里插入图片描述

在switch中使用break

  • 当 break 语句用于 switch 语句中时,会跳出 switch 代码块,终止执行代码。

  • 注意:break 关键字只能退出当前的代码块,不会影响到其他的代码块

    var num=5;
    switch (num){
        case 5:
            console.log("5");
        case 4:
            console.log("4");
            for(var i=0;i<3;i++){
                if(true){
                    break;//只能退出循环,不会影响到switch语句
                }
            }
        case 3:
            console.log("3");
            break;//这个break就能防止case穿透
        case 2:
            console.log("2");
    }
    

2、continue

  • continue 不是退出一个循环,而是开始循环的一次新迭代。(就是跳出当前的循环,然后继续后面的循环)
  • continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!

continue 与 break 语句的区别

  • break 是结束整个循环体,continue是结束单次循环。
for(var i=0;i<6;i++){
    if(i===3){
        console.log(i+"等于3,跳出整个循环")
        break;
    }
    console.log(i);
}

在这里插入图片描述

for(var i=0;i<6;i++){
    if(i===3){
        console.log("——"+i+"等于3,跳出i=3的循环,继续执行后续循环")
        continue;
    }
    console.log(i+1+"次循环");
}

在这里插入图片描述

  • 注意:
    • continue 语句(不带标签引用),只能用在循环或 switch 中。

3、return

  • ECMAScript 中的函数在定义时不必指定是否返回值。函数会在执行完 return 语句之后停止并立即退出。

  • return直接结束整个方法,不管这个return处于多少层循环之内。

  • 未指定返回值的函数 return 返回的是一个特殊的 undefined 值。

    • 在函数中不写return,或者return 关键字后面不写任何值;返回的就是一个 undefined;
    function fn(){
    	console.log("简简单单的一个函数");
    	return;
    }
    console.log(fn());// undefined
    
    function fnNoReturn(){
    	console.log("简简单单的一个函数");
    }
    console.log(fnNoReturn());// undefined
    
  • return 语句会终止函数的执行并返回函数的值

递归中的return

  • 递归的意义:递归就是调用自身的一种编程技巧,在程序设计中应用广泛。递归函数就是函数对自身的调用,是循环运算的一种算法模式。

  • 递归必须由以下两部分组成。

    • 递归调用的过程。
    • 递归终止的条件。
  • 递归中的return 是逐级返回

    function fn(num){
        if(num === 1){
            return 1;
        }
        return num+fn(--num);
    }
    console.log(fn(5));// 15
    
    • if 中的return是跳出函数循环的条件,只有当满足条件是才进入if语句中。

    • 一开始传入实参5 ,不满足条件,fn(5) 函数返回的结果是 5+fn(4) ;

    • fn(4) 相当于传入 实参4调用函数

      • fn(4) 函数返回的结果是 4+fn(3) ;
    • fn(3) 相当于传入 实参3调用函数

      • fn(3) 函数返回的结果是 3+fn(2) ;
    • fn(2) 相当于传入 实参2调用函数

      • fn(2) 函数返回的结果是 2+fn(1) ;
    • fn(1) 相当于传入 实参1调用函数

      • num===1 满足条件,函数返回 数值1,终止函数调用;
    • 所以fn(5)的return 返回的结果是:
      在这里插入图片描述

本文地址:https://blog.csdn.net/weixin_48066258/article/details/107283778

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网