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’]
            }

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

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