码迷,mamicode.com
首页 > 编程语言 > 详细

js数组操作---改变原数组和不改变原数组的方法整理

时间:2021-06-13 10:56:48      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:应该   span   将不   添加   join()   它的   reverse   生成   深拷贝   

一、改变原始数组的方法:

1、pop()

     删除 array 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不 改变数组,并返回 undefined 值。array.pop() 。

2、push()

   push() 方法可把它的参数顺序添加到 array 的尾部。它直接修改 array,而不是创建一个新的数组,array.push(newelement1,newelement2,….,newelementX) 。

3、reverse()

   该方法会改变原来的数组----将原来的数组倒序,而不会创建新的数组。array.reverse()。

4、shift()

   删除数组的第一个元素,并返回第一个元素的值,如果数组是空的,那么 shift() 方法将不进行任何操作。

5、unshift()

   unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。array.unshift(newelement1,newelement2,….,newelementX)返回array 的新长度。

6、sort()

   对数组的引用。请注意,数组在原数组上进行排序,不生成副本。array.sort(sortby) (如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。 
   如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。 
若 a 等于 b,则返回 0。 
若 a 大于 b,则返回一个大于 0 的值。) 

7、splice()

 splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。 如果从 array 中删除了元素,则返回的是含有被删除的元素的数组 array.splice(index,howmany,item1,…..,itemX) 。

 

 

二、不改变原始数组的方法:

1、concat()

   用于连接两个或多个数组,仅会返回被连接数组的一个副本,array.concat(arrayX,arrayX,……,arrayX) 。

2、join()

   返回一个字符串。该字符串是通过把 array 的每个元素转换为字符串,然后把这些字符串连接起来,array.join(separator) 。

3、slice()

   array.slice(start,end)返回一个新的数组,包含从 start 到 end (不包括该元素)的 array 中的元素。

4、JSON.parse(JSON.stringify(arry))

   这种方式会重新复制一个数组。也是实现深拷贝的一种方式。

js数组操作---改变原数组和不改变原数组的方法整理

标签:应该   span   将不   添加   join()   它的   reverse   生成   深拷贝   

原文地址:https://www.cnblogs.com/lybweb/p/14879398.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!