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。
var num = [1,2,3,4,5];
var eve = num.every(function(item, index, arr){
return (item > 2);
});
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]
JS数组中every(),filter(),forEach(),map(),some()方法学习笔记!的更多相关文章
- js数组中indexOf/filter/forEach/map/reduce详解
今天在网上看到一篇帖子,如题: 出处:前端开发博客 (http://caibaojian.com/5-array-methods.html) 在ES5中一共有9个Array方法,分别是: Array. ...
- JS Array常用方法indexOf/filter/forEach/map/reduce详解
Array共有九个方法 Array.prototype.indexOf Array.prototype.lastIndexOf Array.prototype.every Array.protot ...
- js数组中的find(), findIndex(), filter(), forEach(), some(), every(), map(), reduce()方法的详解和应用实例
1. find()与findIndex() find()方法,用于找出第一个符合条件的数组成员.它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该 ...
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
- python中的filter、map、reduce、apply用法
1. filter 功能: filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函数. 调用: filter(function,seq ...
- 统计js数组中奇数元素的个数
如何统计一个JS数组中奇数元素的个数呢? 这是群友提出的一个问题,大部分群友给出的是遍历 然后对2取模,得到最终结果. 这样的写法是最容易想得到的,那么有没有其他思路呢? 这里我提供另外一种思路,我们 ...
- JavaScript从数组中删除指定值元素的方法
本文实例讲述了JavaScript从数组中删除指定值元素的方法.分享给大家供大家参考.具体分析如下: 下面的代码使用了两种方式删除数组的元素,第一种定义一个单独的函数,第二种为Array对象定义了一个 ...
- 关于iOS去除数组中重复数据的几种方法
关于iOS去除数组中重复数据的几种方法 在工作工程中我们不必要会遇到,在数组中有重复数据的时候,如何去除重复的数据呢? 第一种:利用NSDictionary的AllKeys(AllValues)方 ...
- php获取数组中重复数据的两种方法
分享下php获取数组中重复数据的两种方法. 1,利用php提供的函数,array_unique和array_diff_assoc来实现 <?php function FetchRepeatMem ...
随机推荐
- Java链接MySQL练习题:格式化日期、性别;避免代码注入
一.查询人员名单,按序号 姓名 性格(男或女) 民族(某族) 生日(年月日)输出 import java.sql.*; import java.text.SimpleDateFormat; publi ...
- Table样式
.tb_org th { background-color: #; color: #ffffff; } .tb_org { border-right: 1px solid silver; border ...
- Oracle SQL explain/execution Plan
From http://blog.csdn.net/wujiandao/article/details/6621073 1. Four ways to get execution plan(anyti ...
- .net(C#)在vs2010版本下的MVC如何才能运行静态页面(html)
正如,我上篇写的那样,那是在测试下,我所实现的方法,但是作为WEB项目,终究要发布的,故我把发布和切换在这说一下. 据我实测,我在按照我上篇改了Views下的Webconfig文件后,在解决方案下建了 ...
- ActiveReports中如何控制页面的记录数
在 ActiveReports 中,可以固定报表每页显示的行数,当每页的数据不足固定的行数时,自动通过填补空白行来实现,当然这两种功能仅限于区域报表和页面报表中. 区域报表 在区域报表中,有很多方法来 ...
- [Java] 特殊正则-替换字符串
public class Test { public static void main(String[] args) { String str = "2412rhttp://192.168. ...
- HashMap,LinkedHashMap,TreeMap的区别
Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复. Hashmap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很 ...
- Unity3D 中的3种坐标系
Unity3D Script API : Camera 若干文章: 1.Screen VS Viewport What is the difference 2.Screen,Viewport有什麽區別 ...
- 前端面试题2016--HTML
本文由我收集总结了一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习.透彻学习,形成自己的知识链.万不可投机取巧,临时抱佛脚只求面试侥幸混过关是错误的!也是不可能的!不可能的!不可 ...
- git使用和理解之一(不含分支)
0.前言 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 工作区和暂存区: 我们写代码的地方就是工作区,代码写完后, ...