JS数组中every(),filter(),forEach(),map(),some()方法学习笔记!转
ES5中定义了五种数组的迭代方法:every(),filter(),forEach(),map(),some()。
每个方法都接受两个参数:要在每一项运行的函数(必选)和运行该函数的作用域的对象-影响this的值(可选);
每个方法中的函数都会接受三个参数:该项的值(item),该项在数组的位置(index),数组对象本身(arr);
目前支持的浏览器有:IE9+, Firefox1.5+, Firefox(Gecko)1.8+, Chrome, Opera, Safari.
1.every()
对数组中的每一项都进行操作,而且每一项都要符合函数的条件.才会返回ture,否则返回false。
1 var num = [1,2,3,4,5]; 2 var eve = num.every(function(item, index, arr){ 3 return (item > 2); 4 }); 5 console.log(eve); //false
2.some()
这个方法与every()方法极为相似,但又有所不同,every要求每一项都要符合函数里面的条件,而some只要求有数组中的某一项符合即可,这点类似于或与和。返回的是布尔值,使用事例如下:
1 var num = [1,2,3,4,5]; 2 var eve = num.some(function(item, index, arr){ 3 return (item > 2); 4 }); 5 console.log(eve); //true
3.filter()
filter就相当于一个过滤器,符合条件的留下,不符合条件的去除。返回符合条件的数组!案例如下:
var num = [1,2,3,4,5]; var eve = num.filter(function(item, index, arr){ return (item > 2); }); console.log(eve); //[3,4,5]
4.forEach()
forEach()方法可以使数组中的每个值都执行指定的函数,而且forEach()方法是唯一没有返回值的方法!案例如下:
var num = [1,2,3,4,5]; var eve = num.forEach(function(item, index, arr){ //执行你想要的操作 });
5.map()
map()方法同样可以使数组中的每一个值都执行指定的函数,并且返回得到的新的数组!案例如下:
var num = [1,2,3,4,5]; var eve = num.map(function(item, index, arr){ return item + 2; }); console.log(eve); //[3,4,5,6,7]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
2021-06-30 安装less后报错:Module build failed: TypeError: this.getOptions is not a function at Object.