JavaScript数组方法总结分析


Posted in Javascript onMay 06, 2016

由于最近都在freecodecamp上刷代码,运用了很多JavaScript数组的方法,因此做了一份关于JavaScript教程的整理,具体内容如下:

一、普通方法

1、join() 将数组元素连接在一起,并以字符串形式返回
参数:可选,指定元素之间的分隔符,没有参数则默认为逗号
返回值:字符串
对原数组的影响:无

2、reverse()将数组的元素顺序变成倒序返回
参数:无
返回值:数组
对原数组的影响:原数组被修改为倒序排列之后的数组

3、sort()对数组元素进行排序并返回
参数:可选,排序的方法函数,没有参数则默认按照字典顺序排序
返回值:排序后的数组
对原数组的影响:原数组被修改为排序之后的数组

4、concat()连接若干个数组
参数:若干个,可以是数组或者是元素,
返回值:连接后的新数组
对原数组的影响:无

5、slice()从数组中截下若干个元素,组成新的数组并返回
参数:两个数字,其中第二个可选,第一个参数表示开始截取的第一个元素的index值(截取时包含这个元素),如果第一个参数是负数,则指截取的元素从元素结尾开始算起(如:-1表示最后一个元素);第二个参数的意义则是停止截取的元素的index值(截取时不包含这个字符),负值情况同第一个参数
返回值:截取的新数组
对原数组的影响:无

6、splice()从数组中替换、删除或插入元素并返回新数组
参数:若干个参数,其中第一个参数必需,其他为可选,第一个参数为操作的第一个index值,此时无第二个参数时,将删除第一个参数(包含第一个参数)的index值之后所有的元素,含有第二个参数时,第二个参数删除元素的个数,并返回这些元素组成的新数组;当第二个参数为0时,后面的参数会作为新的元素插入原数组,并返回一个空数组;当第二个参数不为0,且含有其他参数时,则进行替换操作,并返回替换之前那些原来元素组成的新数组
返回值:删除元素组成的新数组
对原数组的影响:会对原数组进行替换、删除、插入等操作

7、push()向数组的尾部添加元素并返回数组长度
参数:若干个,向数组尾部添加的元素
返回值:添加元素之后的数组的长度
对原数组的影响:原数组尾部被添加元素

8、pop()从数组尾部删除一个元素
参数:无
返回值:删除的元素
对原数组的影响:原数组尾部被删除一个元素

9、unshift()向数组的头部添加元素并返回数组长度
参数:若干个,向数组头部添加的元素
返回值:添加元素之后的数组的长度
对原数组的影响:原数头部被添加元素

10、shift()从数组头部删除一个元素
参数:无
返回值:删除的元素
对原数组的影响:原数组头部被删除一个元素

11、toString()将数组转化为字符串,每个元素之间以逗号相隔
参数:无
返回值:形成的字符串(二维数组中也只是连接二维数组的元素)
对原数组的影响:无

12、toLocaleString()是toString()方法的本地化版本

--------------------------------------------------------------------------------

二、迭代器方法

1、foreach()对数组每个元素调用方法
参数:一个函数
返回值:无
对原数组的影响:无

2、every()接受一个返回值为布尔类型的函数,数组中所有的元素,该函数均返回true,则返回true,否则返回false
参数:一个返回值为布尔类型的函数
返回值:true或者false
对原数组的影响:无

3、some()接受一个返回值为布尔类型的函数,数组中只要有元素,该函数返回true,则返回true,否则返回false
参数:一个返回值为布尔类型的函数
返回值:true或者false
对原数组的影响:无

4、map()接受一个函数作为参数,返回一个新数组,新数组的元素是原数组元素使用该函数的结果
参数:一个函数
返回值:每个元素使用函数的结果值组成的数组
对原数组的影响:无

5、filter()接收一个返回值为布尔值的函数作为参数,对所有元素应该该函数,并返回返回值为true的元素组成的新数组
参数:一个函数
返回值:每个元素使用函数为true的元素组成的数组
对原数组的影响:无

--------------------------------------------------------------------------------

三、归并方法

1、reduce()接受一个函数作为参数,返回一个值。从一个累加值开始, 不断对累加值和数组中的后续元素调用该函数。
参数:一个函数
返回值:最后的累加值
对原数组的影响:无

2、reduceRight()方法
说明:和reduce一样,只是执行顺序是从右到左

以上这篇JavaScript数组方法总结分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用 Node.js 做 Function Test实现方法
Oct 25 Javascript
js实现可折叠展开的手风琴菜单效果
Sep 07 Javascript
javascript弹性运动效果简单实现方法
Jan 08 Javascript
jQuery实现点击表格单元格就可以编辑内容的方法【测试可用】
Aug 01 Javascript
利用Javascript仿Excel的数据透视分析功能
Sep 07 Javascript
实现jquery放大镜的两种方法
Feb 22 jQuery
React router动态加载组件之适配器模式的应用详解
Sep 12 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
Dec 05 Javascript
利用原生JavaScript实现造日历轮子实例代码
May 08 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
Nov 04 Javascript
Vue+ElementUI table实现表格分页
Dec 14 Javascript
JavaScript实现图片伪异步上传过程解析
Apr 10 Javascript
JS平滑无缝滚动效果的实现代码
May 06 #Javascript
使用AJAX实现Web页面进度条的实例分享
May 06 #Javascript
JavaScript中的原型继承基础学习教程
May 06 #Javascript
jquery实现下拉框功能效果【实例代码】
May 06 #Javascript
浅析在javascript中创建对象的各种模式
May 06 #Javascript
jquery自定义插件——window的实现【示例代码】
May 06 #Javascript
javascript创建对象的几种模式介绍
May 06 #Javascript
You might like
如何设置mysql允许外网访问
2013/06/04 PHP
探讨php中遍历二维数组的几种方法详解
2013/06/08 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
2014/04/18 PHP
php中使用array_filter()函数过滤空数组的实现代码
2014/08/19 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
ModelDialog JavaScript模态对话框类代码
2011/04/17 Javascript
jQuery中delegate与on的用法与区别示例介绍
2013/12/20 Javascript
javascript删除字符串最后一个字符
2014/01/14 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
BootStrap Table对前台页面表格的支持实例讲解
2016/12/22 Javascript
jQuery快速高效制作网页交互特效
2017/02/24 Javascript
angularjs定时任务的设置与清除示例
2017/06/02 Javascript
微信小程序滚动Tab实现左右可滑动切换
2017/08/17 Javascript
说说AngularJS中的$parse和$eval的用法
2017/09/14 Javascript
浅谈node模块与npm包管理工具
2018/01/03 Javascript
vue axios 简单封装以及思考
2018/10/09 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
Angular6 Filter实现页面搜索的示例代码
2018/12/02 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
彻底揭秘keep-alive原理(小结)
2019/05/05 Javascript
JS使用H5实现图片预览功能
2019/09/30 Javascript
koa-passport实现本地验证的方法示例
2020/02/20 Javascript
在VUE style中使用data中的变量的方法
2020/06/19 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
[01:06:42]VP vs NewBee Supermajor 胜者组 BO3 第二场 6.5
2018/06/06 DOTA
Python实现的根据IP地址计算子网掩码位数功能示例
2018/05/23 Python
python实现键盘输入的实操方法
2019/07/16 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
2020/03/18 Python
Flask中jinja2的继承实现方法及实例
2021/03/03 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
Java语言的优势
2015/01/10 面试题
网上卖盒饭创业计划书
2014/01/26 职场文书