js中常用的一些遍历方法,及一些跳出循环的方法

js中常用的一些遍历方法,及一些跳出循环的方法1.首先看看跳出循环的方法1)结束本次循环进入下一次循环:continue:for循环、forin、forofreturntrue/false:forEach2)结束整个循环break:for循环、forin、forof、while、do{}while()、trycatch:forEach等各种需要终止循环的程序3)注意:如果有两层fo…

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

1.首先看看跳出循环的方法

1)结束本次循环进入下一次循环:

continue:for循环 、 for in 、 for of

return true/false:for Each 

2)结束整个循环

break:for循环 、 for in 、 for of、while、do{}while()、

try catch:for Each等各种需要终止循环的程序

3)注意:如果有两层for循环,内层continue只结束内层本次循环,内层break只结束内层循环

for(var i=1;i<=5;i++){

                for(var j=1;j<=3;j++){

                    if(j==2){

                        break; //i取每个值时,都会执行j的循环,但是当j==2时,本次i对应的j循环就全部结束,进入下一个i的j循环
                    }
                    alert(j)
                }
            }

2.js常用的循环遍历

1)array.map(function(currentValue,index,arr),thisValue)   返回数组

     map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理的后值。 

     map()方法按照原始数组元素顺序依次处理元素。 

                    var numbers = [1,2,3,4];
                    function myFunction(num,index,arr){

            
                        console.log(‘arr’,arr);
            
                        console.log(‘index’,index);
            
                        console.log(‘num’,num);
            
                        return num * 2;
            
                    }
                       var mm = numbers.map(myFunction);
                       console.log(mm)    //[2,4,6,8]

2)array.some(function(currentValue,index,arr),thisValue)    返回布尔值

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

var ages = [3, 10, 18, 20];
function checkAdult(age) {

    return age >= 18;
}
var m= ages.some(checkAdult);  //true

3)Object.keys(obj|array)   返回数组

返回一个所有元素为字符串的数组,其元素来自于从给定的object上面可直接枚举的属性。这些属性的顺序与手动遍历该对象属性时的一致。

var arr = ['a', 'b', 'c'];
console.log(Object.keys(arr)); // console: ['0', '1', '2']

// array like object
var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.keys(obj)); // console: ['0', '1', '2']

4)array.filter(function(currentValue,index,arr), thisValue)   返回数组

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

注意: filter() 不会对空数组进行检测。

注意: filter() 不会改变原始数组。

var ages = [32, 33, 16, 40];
function checkAdult(age) {

    return age >= 18;
}
var m= ages.filter(checkAdult); //[32,33,40]
5)for of 一般用来遍历数组(一般不用for in遍历数组:会把数组所有原型属性及方法都列举出来影响预期结果)

var array = [“first”,”second”,”third”,”fourth”];

for(var item of array){

                if (item == “third”) {

                   break;
                }
                alert(item);// first,sencond
            }

6)for in 用来遍历对象属性(使用for in会遍历数组所有的可枚举属性,包括原型)

  定义:用于循环遍历数组或对象属性,fot in循环里面的index是string类型的,

                 代码每执行一次,就会对数组的元素或者对象的属性进行一次操作

     缺点:某些情况下,会出现随机顺序的遍历,因为里面的值是string类型,所以
                增加了转换过程,因此开销较大

     优点:可以遍历数组的键名,遍历对象简洁方便

var obj={

                 name:’zs’,
                 age:’23’,
                 sex:’男’
             }

      for(var key in obj){

                if (key == “age”) {

                   continue;
                }
                alert(key);// [‘name’,’sex’]
            }

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android移动开发-VR全景照片简单实现

    Android移动开发-VR全景照片简单实现VR技术的热度每年都在增长,在购物、旅游等方面运用度很高。该项目引用了Google的vr:sdk-panowidget依赖库,通过VrPanoramaView,简单实现在手机上查看全景照片,下面是项目介绍。build.gradle(Module:app)需要导入依赖:dependencies{implementation‘com.google.vr:sdk-panowidget:1.30.0’}布局文件activity_main.xml,调

    2022年4月7日
    295
  • UINT32 UINT8 C 语言数据格式[通俗易懂]

    UINT32 UINT8 C 语言数据格式[通俗易懂]UINT32:32BIT无符号型整数unsignedintUINT8:8BIT无符号型整数也就是unsignedchar

    2022年9月6日
    2
  • 什么是堡垒机?为什么需要堡垒机?

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:猿话 www.toutiao.com/i6881462700229329421 什么是堡垒机 堡垒机,即在一个…

    2021年6月27日
    87
  • 河北2021文科一本分数线_19年文科二本分数线

    河北2021文科一本分数线_19年文科二本分数线2017年河北文科高考成绩排名一分一档表,河北高考文科成绩排名查询河北省共有40.48万人报名参加2017年高考,比2017年减少1.34万人,这已是河北省报考人数连续第七年下降。统计数据显示,统考报名人数为37.82万人,比2017年减少1.45万人;对口高考2.28万人,与2013年基本持平;只参加各种单独招生的近3800人,比2017年增加近1200人。报名考生中,应届考生34.73万人,社…

    2022年9月13日
    0
  • docker 镜像导入导出_镜像导出

    docker 镜像导入导出_镜像导出Docker镜像的导入导出本文介绍Docker镜像的导入导出,用于迁移、备份、升级等场景,准备环境如下:CentOS7.0Docker1.18导入导出命令介绍涉及的命令有export、import、save、loadsave命令dockersave[options]images[images…]示例dockersave-…

    2022年9月16日
    0
  • vue 生成二维码 打印_代码生成二维码

    vue 生成二维码 打印_代码生成二维码npminstallqrcodejs2–save<template><div><divid=”qrCode”ref=”qrCodeDiv”></div></div></template><script>importQRCodefrom’qrcodejs2′;exportdefault{name:”qrCode”,data(){.

    2022年9月26日
    0

发表回复

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

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