JS中的几种循环和跳出方式

JS中的几种循环和跳出方式JS中的循环是大家很常用的,这里总结一下几种常用循环的跳出方式。1.for循环vararr=[‘q’,’w’,’e’,’r’,’t’];for(vari=0,len=arr.length;i<len;i++){console.log(arr[i]);}//q,w,e,r,t跳出本次循环continue:f…

大家好,又见面了,我是你们的朋友全栈君。

JS中的循环是大家很常用的,这里总结一下几种常用循环的跳出方式。

1.for循环

var arr = ['q','w','e','r','t'];
for(var i=0, len = arr.length ; i< len ; i++){
    console.log(arr[i]);    
}

// q , w , e , r , t

跳出本次循环continue:

for(var i=0, len = arr.length ; i< len ; i++){
    if(i == 2){
        continue;
    }
    console.log(arr[i]);    
}

// q ,  w , r , t

当i==2时,跳出本次循环,本次循环下面的代码不在执行。但是真个循环继续执行,直到循环条件为false。

跳出整个循环break:

for(var i=0, len = arr.length ; i< len ; i++){
    if(i == 2){
        break;
    }
    console.log(arr[i]);    
}

// q ,  w 

当i == 2时,使用break跳出整个循环,后面的循环条件不在执行,直接退出整个循环。

2. for-in循环

退出方法同for循环。

3.jQuery的each循环

$.each(arr,function(index,oo){
    console.log(oo);
})
//q , w , e , r , t

退出当前循环 return true:

$.each(arr,function(index,oo){
    if(index == 2){
        return true;
    }
    console.log(oo);
})
//q ,w ,r ,t

当index == 2 时,退出当前循环,整体循环继续执行。

退出整个循环 return false:

$.each(arr,function(index,oo){
    if(index == 2){
        return false;
    }
    console.log(oo);
});

// q , w

当index == 2时,使用return false,可以退出整个循环,后面的条件不在执行。

4.forEach循环

arr.forEach(function(oo,index){
    console.log(oo);
});

// q, w, e, r, t

退出当前循环 return ;reutrn false ; return true ;

arr.forEach(function(oo,index){
    if(index == 2){
        return ;
        //return false;    //效果同上
       // return true;    //效果同上
    }
    console.log(oo);
});
// q , w ,r ,t

在forEach循环中,return 返回任何值,都只能退出当前循环。

要想跳出整个forEach循环,可以使用抛异常的方式:

try{
    arr.forEach(function(oo,index){
        if(index == 2){
             throw 'jumpout';
        }
        console.log(oo);
    });
}catch(e){
}

// q , w

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136215.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月3日 下午11:16
下一篇 2022年6月3日 下午11:16


相关推荐

  • laravel 博客项目部署到Linux系统后报错 权限都设置为777,仍然报错没有权限

    laravel 博客项目部署到Linux系统后报错 权限都设置为777,仍然报错没有权限

    2021年10月27日
    61
  • mysql中explain的type的解释

    mysql中explain的type的解释连接操作的类型 1 SYSTEMCONST 的特例 当表上只有一条元组匹配 2 CONSTWHERE 条件筛选后表上至多有一条元组匹配时 比如 WHEREID 2 ID 是主键 值为 2 的要么有一条要么没有 3 EQ REF 参与连接运算的表是内表 在代码实现的算法中 两表连接时作为循环中的内循环遍历的对象 这样的表称为内表

    2026年3月19日
    2
  • C语言多线程操作

    C语言多线程操作C 语言多线程操作目录 C 语言多线程 创建线程 终止线程 注意 信号量机制 参考博文 返回目录 C 语言多线程多线程是多任务处理的一种特殊形式 多任务处理允许让电脑同时运行两个或两个以上的程序 一般情况下 两种类型的多任务处理 基于进程和基于线程 基于进程的多任务处理是程序的并发执行 基于线程的多任务处理是同一程序的片段的并发执行 多线程程序包含可以同时运行

    2026年3月26日
    2
  • SSM框架介绍「建议收藏」

    SSM框架介绍「建议收藏」1、SSM框架简介SSM框架是SpringMVC,Spring和Mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,Controller层,Service层,DAO层四层,使用SpringMVC负责请求的转发和视图管理,Spring实现业务对象管理,Mybatis作为数据对象的持久化引擎。…

    2022年7月12日
    24
  • 视频中的车牌特征识别[通俗易懂]

    视频中的车牌特征识别[通俗易懂]这里,没有直接采用之前的方案,是因为在设计的时候,发现直接采用颜色等直接特征提取然后进行二值化处理的方法,如果视频中出现颜色类似的区域,则很有可能错误的定位,例如在公交车中车牌区域范围和前窗以及部分的背景比较相似,直接采用这种方法会出错。这里,定位的算法,我们使用的是HOG特征提取和Adaboost的算法进行定位。对应的程序为:具体的原理如下所示:adaboost:http://www.doc88.com/p-211656392…

    2022年5月15日
    52
  • Matlab fitrsvm自带支持向量回归[通俗易懂]

    Matlab fitrsvm自带支持向量回归[通俗易懂]简介fitrsvm在中低维预测变量数据集上训练或交叉验证支持向量机(SVM)回归模型。fitrsvm支持使用内核函数映射预测变量数据,并支持通过二次编程实现目标函数最小化。要在高维数据集(即包含许多预测变量的数据集)上训练线性SVM回归模型,请改用fitrlinear。用法Mdl=fitrsvm(Tbl,ResponseVarName)返回使用表Tbl中的自变量值和表中对应变量名…

    2022年5月26日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号