当前位置: 首页 > 工具软件 > filer.js > 使用案例 >

JS Array.filter()方法

章宏恺
2023-12-01

今天学习了Array的filter方法,MDN上解释的是filter()方法中行参是一个回调函数.这个回调函数就是一个规则,返回一个布尔值.filter()方法会对数组中每一个元素使用这个回调函数.注意,这里说的是每一个元素.并且将返回值为true的元素装入一个新数组返回.代码如下:

    var arr = ["关羽","woi","赵子龙","马zi超","黄忠"];
    var arr1= arr.filter(function(ele,index,array){
        if(ele.length>2){
            return true;
        }
        return false;
    })
    console.log(arr);
    console.log(arr1);

这里定义的function是判断元素的长度,如果大于2 返回true…可是return不是结束function吗?答案是yes.那既然是这样,在控制台输出"赵子龙"的时候filter()这个方法应该结束了啊.其实不然.

return只是结束掉了定义的function,而filter()这个方法内部有一个类似for循环的句式对元素进行依次判断function的功能.

 类似资料: