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继承的方法,这里我们只介绍数组在每个版本中 ...
随机推荐
- NFS存储服务及部署
1 NFS简介 1.1 什么是NFS NFS=Network File System=网络文件系统.主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用服 ...
- UVA-10608 Friends 【并查集】
There is a town with N citizens. It is known that some pairs of people are friends. According to the ...
- UVA10375 选择与除法 Choose and divide 题解
题目链接: https://www.luogu.org/problemnew/show/UVA10375 分析: 这道题可以用唯一分解定理来做. 什么是唯一分解定理?百度即可,这里也简介一下. 对于任 ...
- C#3.0新增功能01 自动实现的属性
连载目录 [已更新最新开发文章,点击查看详细] 在 C# 3.0 及更高版本,当属性访问器中不需要任何其他逻辑时,自动实现的属性会使属性声明更加简洁. 它们还允许客户端代码创建对象. 当你声明以 ...
- rest-frameword框架的基本组件
序列化 1.models部分 from django.db import models # Create your models here. class Book(models.Model): tit ...
- Webpack 下使用 web workers 及 基本原理 和 应用场景
_ 阅读目录 一:web workers的基本原理 二:web Workers 的基本用法 三:在webpack中配置 Web Workers 四:Web Worker的应用场景 回到顶部 一:web ...
- 【TensorFlow 1】操作变量
打印 在tf中直接打印只是输出变量格式,如: #代码 data1 = tf.constant(2,dtype=tf.int32) #浮点数据 data2 = tf.Variable(10,name=' ...
- java数组扩容
有些时候使用数组代替栈,玩意数组容量不够需要扩容 则: 1.Array.toString();直接遍历打印数组 2.数组扩容采用Array.copyOf(),直接实现数组扩容功能,非常强大 (实际 ...
- IDEA:No SLF4J providers were found.
如果您是用IDEA 的 maven 写的 将slf4j的导入包 更改 为下列代码 <dependency> <groupId>org.slf4j</groupId> ...
- 解决Vuex持久化插件-在F5刷新页面后数据不见的问题
页面刷新后,想保存页面未保存的数据.我们总是习惯于放在浏览器的sessionStorage和localStorage中.但是用了vue后,vuex便可以被应用了. vuex优势:相比sessionSt ...
//假设得到数组当中的每位元素相加的结果,就可以:
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继承的方法,这里我们只介绍数组在每个版本中 ...
随机推荐
- NFS存储服务及部署
1 NFS简介 1.1 什么是NFS NFS=Network File System=网络文件系统.主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用服 ...
- UVA-10608 Friends 【并查集】
There is a town with N citizens. It is known that some pairs of people are friends. According to the ...
- UVA10375 选择与除法 Choose and divide 题解
题目链接: https://www.luogu.org/problemnew/show/UVA10375 分析: 这道题可以用唯一分解定理来做. 什么是唯一分解定理?百度即可,这里也简介一下. 对于任 ...
- C#3.0新增功能01 自动实现的属性
连载目录 [已更新最新开发文章,点击查看详细] 在 C# 3.0 及更高版本,当属性访问器中不需要任何其他逻辑时,自动实现的属性会使属性声明更加简洁. 它们还允许客户端代码创建对象. 当你声明以 ...
- rest-frameword框架的基本组件
序列化 1.models部分 from django.db import models # Create your models here. class Book(models.Model): tit ...
- Webpack 下使用 web workers 及 基本原理 和 应用场景
_ 阅读目录 一:web workers的基本原理 二:web Workers 的基本用法 三:在webpack中配置 Web Workers 四:Web Worker的应用场景 回到顶部 一:web ...
- 【TensorFlow 1】操作变量
打印 在tf中直接打印只是输出变量格式,如: #代码 data1 = tf.constant(2,dtype=tf.int32) #浮点数据 data2 = tf.Variable(10,name=' ...
- java数组扩容
有些时候使用数组代替栈,玩意数组容量不够需要扩容 则: 1.Array.toString();直接遍历打印数组 2.数组扩容采用Array.copyOf(),直接实现数组扩容功能,非常强大 (实际 ...
- IDEA:No SLF4J providers were found.
如果您是用IDEA 的 maven 写的 将slf4j的导入包 更改 为下列代码 <dependency> <groupId>org.slf4j</groupId> ...
- 解决Vuex持久化插件-在F5刷新页面后数据不见的问题
页面刷新后,想保存页面未保存的数据.我们总是习惯于放在浏览器的sessionStorage和localStorage中.但是用了vue后,vuex便可以被应用了. vuex优势:相比sessionSt ...