JavaScript数组方法大全(第二篇)
数组方法大全(第二篇)
注意:如有错误欢迎指出,如有雷同纯属巧合,本博客参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦
forEach()方法
遍历数组,里面可以传递一个方法
var arr = [1,2,3];
arr.forEach(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
})
map()方法
将调用数组的每个元素传递给指定的函数,并返回一个新的数组,不会去修改原数组
var arr = [1,2,4,,6];
var a = arr.map(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
//得有返回值
return item * 2
})
console.log(a); ==>输出[2,4,8,,12]
console.log(arr); ==>输出[1,2,4,,6]
filter()方法
过滤,传递的函数是用来逻辑判定的,该函数返回true或false,如果返回值为true或者能转化为true的值,那么传递给判定函数的元素就是这个子集的成员,就会加入到返回的数组当中去(可以理解为数组当中的每个元素,只要满足自己设定的条件,就会添加到返回的数组当中去)
不修改原数组返回的是满足设定条件元素所组成的数组
var arr = [1,2,4,5,6];
var a = arr.filter(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
//得有return值,不填返回一个空数组
return item < 4;
})
console.log(a); ==>输出[1,2]
console.log(arr); ==>输出[1,2,4,5,6]
every()方法
数组中的每个元素是否满足某个条件,返回值true或false,当有一个不满足条件时就会返回false,当所有元素都满足条件时返回true
var arr = [1,2,3,4];
var a = arr.every(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 5;
})
console.log(a); ==>输出true
some()方法
数组中的元素是否满足某个条件,返回值true或false,当有一个满足条件时就会返回true,当所有元素都不满足条件时返回false
var arr = [1,2,3,4];
var a = arr.some(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 3;
})
console.log(a); ==>输出true
var arr = [1,2,3];
arr.forEach(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
})
var arr = [1,2,4,,6];
var a = arr.map(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
//得有返回值
return item * 2
})
console.log(a); ==>输出[2,4,8,,12]
console.log(arr); ==>输出[1,2,4,,6]
filter()方法
过滤,传递的函数是用来逻辑判定的,该函数返回true或false,如果返回值为true或者能转化为true的值,那么传递给判定函数的元素就是这个子集的成员,就会加入到返回的数组当中去(可以理解为数组当中的每个元素,只要满足自己设定的条件,就会添加到返回的数组当中去)
不修改原数组返回的是满足设定条件元素所组成的数组
var arr = [1,2,4,5,6];
var a = arr.filter(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
//得有return值,不填返回一个空数组
return item < 4;
})
console.log(a); ==>输出[1,2]
console.log(arr); ==>输出[1,2,4,5,6]
every()方法
数组中的每个元素是否满足某个条件,返回值true或false,当有一个不满足条件时就会返回false,当所有元素都满足条件时返回true
var arr = [1,2,3,4];
var a = arr.every(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 5;
})
console.log(a); ==>输出true
some()方法
数组中的元素是否满足某个条件,返回值true或false,当有一个满足条件时就会返回true,当所有元素都不满足条件时返回false
var arr = [1,2,3,4];
var a = arr.some(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 3;
})
console.log(a); ==>输出true
var arr = [1,2,4,5,6];
var a = arr.filter(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
//得有return值,不填返回一个空数组
return item < 4;
})
console.log(a); ==>输出[1,2]
console.log(arr); ==>输出[1,2,4,5,6]
var arr = [1,2,3,4];
var a = arr.every(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 5;
})
console.log(a); ==>输出true
some()方法
数组中的元素是否满足某个条件,返回值true或false,当有一个满足条件时就会返回true,当所有元素都不满足条件时返回false
var arr = [1,2,3,4];
var a = arr.some(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 3;
})
console.log(a); ==>输出true
var arr = [1,2,3,4];
var a = arr.some(function (item,index,array) {
//item:表示数组中元素的每一项
//index:表示每一项所对应的索引
//array:表示原数组
return item < 3;
})
console.log(a); ==>输出true
注意:every()和some()的区别:ervery()一假及假,some()一真及真
reduce()方法
它需要传递两个参数,第一个参数是函数,第二个参数(可选)是传递给函数的初始值
//假设得到数组当中的每位元素相加的结果,就可以:
var arr = [1,2,3,[[5]],{}];
var a = arr.reduce(function (x,y,index,array) {
//x:当有初始值时就代表初始值,没有传递初始值时就为数组第一位,当开始计算时,就为上次运算return的结果
//y:当有初始值时代表数组第一位,没有就代表第二位,当开始计算时表示数组当中的元素
//index:表示数组当中当前元素的索引值
//array:数组元素本身
return x + y
},0)
console.log(a); ==>输出 65[object Object]
reduceRight()方法
略 详情请戳这里
indexOf()方法、lastIndexOf()方法
搜索整个数组中具有给定制的元素,返回找到的第一个元素的索引,如果没有就返回-1
可以传递两个参数,第一个参数表示需要搜索的元素,第二个参数(可选),表示从哪个位置开始搜索,可以是负数表示从数组的倒数第几位开始查找
indexOf()方法从头至尾搜索,而lastIndexOf()则反向搜索
var arr = [1,2,3,4,2,4];
var a = arr.indexOf(2);
console.log(a); ==>输出1
console.log(arr); ==>输出[1,2,3,4,2,4]
var b = arr.lastIndexOf(2);
console.log(b); ==>输出4
console.log(arr); ==>输出[1,2,3,4,2,4]
var c = arr.lastIndexOf(2,-3);
console.log(c); ==>输出1
JavaScript数组方法大全(第二篇)的更多相关文章
- JavaScript数组方法大全(推荐)
原网址:http://www.jb51.net/article/87930.htm 数组在笔试中经常会出现的面试题,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习, ...
- 一站式超全JavaScript数组方法大全
一站式JavaScript数组方法大全(建议收藏) 方法一览表 详细操作 本人总结了JavaScript中有关数组的几乎所有方法(包含ES6之后新增的),并逐一用代码进行演示使用,希望可以帮助大家! ...
- JavaScript数组方法大全(第一篇)
数组方法大全(第一篇) 注意:第一次写博客有点小紧张,如有错误欢迎指出,如有雷同纯属巧合,本次总结参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦 join()方法 该方法是将数组 ...
- 【转】JavaScript数组方法大全
数组在笔试题中出现的概率最高的类型之一,JavaScript中的数组与其他语言中的数组有些区别,为了方便以后查看数组的方法,现将对数组的操作方法进行汇总整理. 数组创建 JavaScript中创建数组 ...
- JavaScript数组方法大全
1.两个数组拼接的方法: Array.concat(obj); var array = [1,2,3]; var array2 = [4,5,6]; var arrtotall = array.con ...
- JavaScript数组方法--every、some、fill
接上一篇,JavaScript数组方法--concat.push,继续其他的数组方法. every:every() 方法测试数组的所有元素是否都通过了指定函数的测试. 先看其使用方法: functio ...
- 【译】你应该了解的JavaScript数组方法
让我们来做一个大胆的声明:for循环通常是无用的,而且还导致代码难以理解.当涉及迭代数组.查找元素.或对其排序或者你想到的任何东西,都可能有一个你可以使用的数组方法. 然而,尽管这些方法很有用,但是其 ...
- 转载收藏(js数组方法大全)
js数组方法大全 JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组var arr2 = new Arra ...
- JavaScript数组方法详解
JavaScript数组方法详解 JavaScript中数组的方法种类众多,在ES3-ES7不同版本时期都有新方法:并且数组的方法还有原型方法和从object继承的方法,这里我们只介绍数组在每个版本中 ...
随机推荐
- CentOS 7离线安装Ansible
前言 我一直都想成为自动化运维界最亮的仔,奈何自己实力不允许.不过,我一直都在奋斗的路上:这不,最近就在学习自动化运维界的神器--Ansible. 要系统的学习一下Ansible,那就是要先搭建学习环 ...
- java中this 和 super关键字的作用
emmmmmm也真的是好久没有写过java了,因为项目需要, 最近又必须重新拾起来了,虽然好多东西也都忘得差不多了.... 然后发现 竟然把super和this傻傻分不清.... 开个帖子记录一下: ...
- 踩坑 Spring Cloud Hystrix 线程池队列配置
背景: 有一次在生产环境,突然出现了很多笔还款单被挂起,后来排查原因,发现是内部系统调用时出现了Hystrix调用异常.在开发过程中,因为核心线程数设置的比较大,没有出现这种异常.放到了测试环境,偶尔 ...
- 2019年7月22日 - LeetCode0004
https://leetcode-cn.com/problems/median-of-two-sorted-arrays/submissions/ 我的解法: 我看到了那个log的要求,也第一时间想到 ...
- CentOS 下编译安装PHP
1. 去php官网下载源码 http://www.php.net/downloads.php ,我下载使用的版本是(php-5.4.8.tar.gz) 2. 安装环境 yum install ...
- 2015.11.27---Java
public class star{ public static void main(String[] args) { System.out.print("ha"); } }
- cookbook_元编程
1给函数添加一个包装 问题:给函数加一个外包装层,已添加额外的处理,例如,记录日志,计时统计等 解决方案:可以定义一个装饰器来包装函数 2编写装饰器时如何保存函数的元数据 问题:当一个函数被装饰器装饰 ...
- Hadoop自学系列集(一) ---- 使用VMware安装CentOS
1.概述 笔者的学习环境--在VMware虚拟机下安装四个CentOS系统(搭建Hadoop集群用),其中一个为Master,三个为Slave,Master作为Hadoop集群中的NameNode, ...
- 定制开发kubernetes流程
kubernetes集群三步安装 概述 本文介绍如何对kubernetes进行二次开发,仓库如何管理,git分支如何管理,怎样利用CI去编译与发布以及如何给社区贡献代码等,结合实际例子,望对大家有所帮 ...
- 编码规范 | Java函数优雅之道(上)
导读 随着软件项目代码的日积月累,系统维护成本变得越来越高,是所有软件团队面临的共同问题.持续地优化代码,提高代码的质量,是提升系统生命力的有效手段之一.软件系统思维有句话“Less coding, ...
//假设得到数组当中的每位元素相加的结果,就可以:
var arr = [1,2,3,[[5]],{}];
var a = arr.reduce(function (x,y,index,array) {
//x:当有初始值时就代表初始值,没有传递初始值时就为数组第一位,当开始计算时,就为上次运算return的结果
//y:当有初始值时代表数组第一位,没有就代表第二位,当开始计算时表示数组当中的元素
//index:表示数组当中当前元素的索引值
//array:数组元素本身
return x + y
},0)
console.log(a); ==>输出 65[object Object]
var arr = [1,2,3,4,2,4];
var a = arr.indexOf(2);
console.log(a); ==>输出1
console.log(arr); ==>输出[1,2,3,4,2,4]
var b = arr.lastIndexOf(2);
console.log(b); ==>输出4
console.log(arr); ==>输出[1,2,3,4,2,4]
var c = arr.lastIndexOf(2,-3);
console.log(c); ==>输出1
JavaScript数组方法大全(第二篇)的更多相关文章
- JavaScript数组方法大全(推荐)
原网址:http://www.jb51.net/article/87930.htm 数组在笔试中经常会出现的面试题,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习, ...
- 一站式超全JavaScript数组方法大全
一站式JavaScript数组方法大全(建议收藏) 方法一览表 详细操作 本人总结了JavaScript中有关数组的几乎所有方法(包含ES6之后新增的),并逐一用代码进行演示使用,希望可以帮助大家! ...
- JavaScript数组方法大全(第一篇)
数组方法大全(第一篇) 注意:第一次写博客有点小紧张,如有错误欢迎指出,如有雷同纯属巧合,本次总结参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦 join()方法 该方法是将数组 ...
- 【转】JavaScript数组方法大全
数组在笔试题中出现的概率最高的类型之一,JavaScript中的数组与其他语言中的数组有些区别,为了方便以后查看数组的方法,现将对数组的操作方法进行汇总整理. 数组创建 JavaScript中创建数组 ...
- JavaScript数组方法大全
1.两个数组拼接的方法: Array.concat(obj); var array = [1,2,3]; var array2 = [4,5,6]; var arrtotall = array.con ...
- JavaScript数组方法--every、some、fill
接上一篇,JavaScript数组方法--concat.push,继续其他的数组方法. every:every() 方法测试数组的所有元素是否都通过了指定函数的测试. 先看其使用方法: functio ...
- 【译】你应该了解的JavaScript数组方法
让我们来做一个大胆的声明:for循环通常是无用的,而且还导致代码难以理解.当涉及迭代数组.查找元素.或对其排序或者你想到的任何东西,都可能有一个你可以使用的数组方法. 然而,尽管这些方法很有用,但是其 ...
- 转载收藏(js数组方法大全)
js数组方法大全 JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组var arr2 = new Arra ...
- JavaScript数组方法详解
JavaScript数组方法详解 JavaScript中数组的方法种类众多,在ES3-ES7不同版本时期都有新方法:并且数组的方法还有原型方法和从object继承的方法,这里我们只介绍数组在每个版本中 ...
随机推荐
- CentOS 7离线安装Ansible
前言 我一直都想成为自动化运维界最亮的仔,奈何自己实力不允许.不过,我一直都在奋斗的路上:这不,最近就在学习自动化运维界的神器--Ansible. 要系统的学习一下Ansible,那就是要先搭建学习环 ...
- java中this 和 super关键字的作用
emmmmmm也真的是好久没有写过java了,因为项目需要, 最近又必须重新拾起来了,虽然好多东西也都忘得差不多了.... 然后发现 竟然把super和this傻傻分不清.... 开个帖子记录一下: ...
- 踩坑 Spring Cloud Hystrix 线程池队列配置
背景: 有一次在生产环境,突然出现了很多笔还款单被挂起,后来排查原因,发现是内部系统调用时出现了Hystrix调用异常.在开发过程中,因为核心线程数设置的比较大,没有出现这种异常.放到了测试环境,偶尔 ...
- 2019年7月22日 - LeetCode0004
https://leetcode-cn.com/problems/median-of-two-sorted-arrays/submissions/ 我的解法: 我看到了那个log的要求,也第一时间想到 ...
- CentOS 下编译安装PHP
1. 去php官网下载源码 http://www.php.net/downloads.php ,我下载使用的版本是(php-5.4.8.tar.gz) 2. 安装环境 yum install ...
- 2015.11.27---Java
public class star{ public static void main(String[] args) { System.out.print("ha"); } }
- cookbook_元编程
1给函数添加一个包装 问题:给函数加一个外包装层,已添加额外的处理,例如,记录日志,计时统计等 解决方案:可以定义一个装饰器来包装函数 2编写装饰器时如何保存函数的元数据 问题:当一个函数被装饰器装饰 ...
- Hadoop自学系列集(一) ---- 使用VMware安装CentOS
1.概述 笔者的学习环境--在VMware虚拟机下安装四个CentOS系统(搭建Hadoop集群用),其中一个为Master,三个为Slave,Master作为Hadoop集群中的NameNode, ...
- 定制开发kubernetes流程
kubernetes集群三步安装 概述 本文介绍如何对kubernetes进行二次开发,仓库如何管理,git分支如何管理,怎样利用CI去编译与发布以及如何给社区贡献代码等,结合实际例子,望对大家有所帮 ...
- 编码规范 | Java函数优雅之道(上)
导读 随着软件项目代码的日积月累,系统维护成本变得越来越高,是所有软件团队面临的共同问题.持续地优化代码,提高代码的质量,是提升系统生命力的有效手段之一.软件系统思维有句话“Less coding, ...