JavaScript数组操作方法大全,包含ES6方法

参考文档

最新数组方法(包括es6)

一、concat()

concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个副本。

e9069590a528479584132dc72b46e021.png

二、join()

join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,默认使用','号分割,不改变原数组。

94bc387651ae4fb19e29162f5e37f7b0.png

三、push()

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。末尾添加,返回的是长度,会改变原数组。

673f975dc5bb4e83b7edc1d00cafd6c5.png

四、pop()

pop() 方法用于删除并返回数组的最后一个元素。返回最后一个元素,会改变原数组。

e260ef46cbb54d9986f1b7f5d327a7b2.png

五、shift()

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。返回第一个元素,改变原数组。

85c462be5a2040d49d7ac52560e66653.png

六、unshift()

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。返回新长度,改变原数组。

425aff324366412da5a9d9ba289c34f5.png

七、slice()

返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。返回选定的元素,该方法不会修改原数组。

5a6443a0bd864c53b8dbcb51e811f741.png

八、splice()

splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。splice() 方法会直接对数组进行修改。

1c7b418f2a26459abfea37908c2eb551.png

九、substring() 和 substr()

相同点:如果只是写一个参数,两者的作用都一样:都是是截取字符串从当前下标以后直到字符串最后的字符串片段。
substr(startIndex);
substring(startIndex);

2d7b0d84e36e4adcbd8cdcc0c0c1ce51.png

不同点:第二个参数
substr(startIndex,lenth): 第二个参数是截取字符串的长度(从起始点截取某个长度的字符串);
substring(startIndex, endIndex): 第二个参数是截取字符串最终的下标 (截取2个位置之间的字符串,‘含头不含尾’)。

f63767085c754839a696ed8bc0a24180.png

十、sort 排序

按照 Unicode code 位置排序,默认升序

1ab471283d1c4752ab2108ef2464a702.png

十一、reverse()

reverse() 方法用于颠倒数组中元素的顺序。返回的是颠倒后的数组,会改变原数组。

60f391a7dcf442ae97d1a266a3a6a12a.png

十二、indexOf 和 lastIndexOf

都接受两个参数:查找的值、查找起始位置
不存在,返回 -1 ;存在,返回位置。indexOf 是从前往后查找, lastIndexOf 是从后往前查找。

indexOf

92a5a7037ff843b197619c69830a8434.png

lastIndexOf

48b5c06e1579454193d0fe6eefcd6226.png

十三、every

对数组的每一项都运行给定的函数,每一项都返回 ture,则返回 true

5854ee6ea81d4c06a66d76b2ae8538a5.png

十四、some

对数组的每一项都运行给定的函数,任意一项都返回 ture,则返回 true

c9d43102f49d45f0bf2feae630aa1161.png

十五、filter

对数组的每一项都运行给定的函数,返回 结果为 ture 的项组成的数组

9d65311db0134bc9b2abbc3ec1f14394.png

十六、map

对数组的每一项都运行给定的函数,返回每次函数调用的结果组成一个新数组

de094db4caf04c6c9e7a1120573a2243.png

十七、forEach 数组遍历

3e32c8415e3f444889ccb3587ca64285.png

ES6新增新操作数组的方法

1、find():

传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它,并且终止搜索。

aae838ecce704e84bdbaa269bb6dfcdd.png

2、findIndex():

传入一个回调函数,找到数组中符合当前搜索规则的第一个元素,返回它的下标,终止搜索。

7084eeeb9c6649f3a3fa0a3bc267f680.png

3、fill():

用新元素替换掉数组内的元素,可以指定替换下标范围。

7d5e1239655e463bbc2d7844c3f65c68.png

4、copyWithin():

选择数组的某个下标,从该位置开始复制数组元素,默认从0开始复制。也可以指定要复制的元素范围。

58aa73ba9b2c45a5ad1df36667f581ad.png

5、from

将类似数组的对象(array-like object)和可遍历(iterable)的对象转为真正的数组

5b2c9fc4dd624788859ece91718a4cca.png

6、of

用于将一组值,转换为数组。这个方法的主要目的,是弥补数组构造函数 Array() 的不足。因为参数个数的不同,会导致 Array() 的行为有差异。

acafefa3119f4c04b3258c4553356f3f.png

7、entries() 返回迭代器:返回键值对

f90f5e7465e240bea759a7f16b6c89d3.png

8、values() 返回迭代器:返回键值对的value

0fb086723312404aac84467e9b002db8.png

9、keys() 返回迭代器:返回键值对的key

8824852d82444bf7a1e99b68fd68f028.png

10、includes

判断数组中是否存在该元素,参数:查找的值、起始位置,可以替换 ES5 时代的 indexOf 判断方式。indexOf 判断元素是否为 NaN,会判断错误。

a267d2da768142db96b0f277685f2d1d.png

​编辑:千锋HTML5

作者:沉静地闪光
来自:https://segmentfault.com/a/1190000016503330

一、concat()

猜你喜欢

转载自blog.csdn.net/document_dom/article/details/90641983