当前位置:网站首页 > Vue.js开发 > 正文

js数组方法哪些会改变原数组(js数组不能改变数组本身)



改变原数组:

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

2.push() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组,arrayObject.push(newelement1,newelement2,….,newelementX)
3.reverse():将数组中元素颠倒过来,该方法会改变原来的数组,而不会创建新的数组。arrayObject.reverse()
4.shift():数组的第一个元素从其中删除,并返回第一个元素的值,如果数组是空的,那么 shift() 方法将不进行任何操作.
5.sort():对数组的引用。请注意,数组在原数组上进行排序,不生成副本。arrayObject.sort(sortby)  不传参数将不会按照数值大小排序,按照字符编码的顺序进行排序;


 
  

传入参数实现升序,降序;

 
  

根据数组中的对象的某个属性值排序;

 
  

多条件排序:根据数组中的对象的多个属性值排序,多条件排序;

 
  

6.splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组
arrayObject.splice(index,howmany,item1,……,itemX)
7.unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。arrayObject.unshift(newelement1,newelement2,….,newelementX)返回arrayObject 的新长度
不改变原数组:
1.concat():用于连接两个或多个数组,仅会返回被连接数组的一个副本,arrayObject.concat(arrayX,arrayX,……,arrayX)
2.jion():返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,arrayObject.join(separator)
3.slice():如果数组是空的arrayObject.slice(start,end)
4.JSON.parse(JSON.stringify(arry)):这种⽅式会重新复制⼀个数组。也是实现深拷贝的⼀种⽅式。5.toString():arrayObject 的字符串表示。返回值与没有参数的 join() 方法返回的字符串相同arrayObject.toString()







6.indexOf、lastindexOf,不会改变原数组,返回查找原数组的索引

indexOf(searchValue[,fromIndex]) 查找目标字符串中,是否包含searchValue,如果包含,返回第一次出现的索引,如果不包含, 返回-1

- searchValue 要查找的值 - fromIndex 查找的起始位置,如果不

填,默认为0

7.filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。array.filter(function(currentValue,index,arr), thisValue)

8.a接收 2 个参数:一个是函数参数,用于执行每个数组元素的函数。另一个是初始值。回调函数还接收 4 个参数:accumulator:初始值, 或者计算结束后的返回值。current:当前元素。index:当前元素的索引。arr:当前元素所属的数组对象。

到此这篇js数组方法哪些会改变原数组(js数组不能改变数组本身)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • vue安装步骤(vue下载安装教程)2025-08-23 15:00:05
  • vue2官网中文文档下载到本地(vue2官方文档)2025-08-23 15:00:05
  • map转jsonstring字符串(map怎么转json字符串)2025-08-23 15:00:05
  • win3.2安装(win32安装clash)2025-08-23 15:00:05
  • plsql注册码在哪里填(plsql9.0注册码)2025-08-23 15:00:05
  • 富文本控件(富文本控件vue<edito)2025-08-23 15:00:05
  • pcie5.0 硬盘(pcie 4.0硬盘)2025-08-23 15:00:05
  • 多级列表1.1,1.2,1.3怎么弄(多级列表1.1,1.2,1.3怎么弄成2.1,2.2)2025-08-23 15:00:05
  • vue路由跳转报错(vue路由跳转报错Unexpected number)2025-08-23 15:00:05
  • vue钩子函数执行顺序(vue钩子函数详解)2025-08-23 15:00:05
  • 全屏图片