javascript数组基本方法

时间:2022-12-16 15:39:11

一、数组方法

javascript数组基本方法

1)concat

该方法用于连接两个或多个数组,返回连接成的新数组的副本,不会改变现有数组

[1,2,3].concat(5,6);//返回[1,2,3,5,6]

2)join

用于把数组的所有成员拼接成一个字符串,元素是通过指定的分隔符进行分隔的,参数为分隔符

[1,2,3].join("+")//返回1+2+3

3)pop

删除并返回数组的最后一个元素

4) push

向数组的末尾添加一个或者多个元素,并返回新的长度

[1,2,3].push(4,5)//新数组[1,2,3,4,5]  返回值5

6)  reverse

用于颠倒数组中元素的顺序,返回跳到顺序后的数组,该方法会改变原来的数组,不会产生新的数组

[1,2,3].reverse()//返回 [3,2,1]

7) shift

删除并返回数组第一个元素

8) slice

从已有的数组中返回选定的元素

slice(star,end) 第一个参数为起始位置,第二个为结尾位置,无end参数的话则选中至数组结尾

该方法不会改变原来的数组 而会返回一个子数组,可以使用负值从数组的尾部选取元素

9) splice

该方法从数组中添加/删除项目,并返回被删除的项目,该方法会改变原始数组

arrayObject.splice(index,haomany,item1...itexmX)

参数index  必需,规定删除/添加项目的位置,使用负数则从数组结尾处规定位置

参数haomany 必需,要删除的项目数量,为0则不删除项目

参数item1....itemX 可选,向数组中添加的新项目

[1,2,3,4,5].splice(1,3,"hello")//返回[1,"hello",5]

10) sort

对数组元素进行排序

arrayObject.sort(sortby) 参数sortby规定排序顺序,必需为函数

返回值 对数组的引用 不会生成新数组 而是在原数组上进行排序

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,

sortby比较函数 function(a,b) { return a - b }  返回值如下

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

[1,10,2,100,30].sort()//返回[1,10,100,2,30] 未传排序参数 按照首字符编码进行排序

[1,10,2,100,30].sort(function(a,b) { return a - b }) // 传排序函数 升序  返回[1,2,10,30,100]

[1,10,2,100,30].sort(function(a,b) { return b - a }) // 传排序函数 降序  返回[100,30,10,2,1]

11) toSource

表示对象的源代码,数组 对象均支持,不常用,通常javascript后台调用 不显式的出现在代码中,只有 Gecko 核心的浏览器(比如 Firefox)支持该方法,也就是说 IE、Safari、Chrome、Opera 等浏览器均不支持该方法。

12) toString 把数组转化成字符串,并返回该字符串,不改变原数组

[1,2,3].toString()//返回1,2,3

13) toLocaleString 把数组转化成本低字符串并返回结果,首先调用每个数组元素的 toLocaleString() 方法,然后使用地区特定的分隔符把生成的字符串连接起来,形成一个字符串。

14)unshift

向数组开头添加一个或多个项目,并返回数组新的长度

[1,2,3].unshift(4,5) //数组变为[4,5,1,2,3] 返回值5

15)valueOf()

返回 Array 对象的原始值。

该原始值由 Array 对象派生的所有对象继承。

valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。