1、shift()
删除原数组第一项,并返回删除元素的值,如果数组为空则返回undefined。该方法会改变原来的数组,而不会创建新的数组。
2、unshift()
将参数添加到原数组开头,并返回数组的长度。该方法会改变原来的数组,而不会创建新的数组。
3、pop()
删除原数组最后一项,并返回删除元素的值,如果数组为空则返回undefined,该方法会改变原来的数组,而不会创建新的数组。
4、push()
将参数添加到原数组末尾,并返回数组的长度,该方法会改变原来的数组,而不会创建新的数组。
5、splice(index,howmany,item1,…..,itemX)
向/从数组中添加/删除项目,然后返回被删除的项目。index开始的下标,howmany删除多少个,item1…itemx为删除后插入的元素。该方法会改变原来的数组,而不会创建新的数组。
6、reverse()
用于颠倒数组中元素的顺序。该方法会改变原来的数组,而不会创建新的数组。
7、concat()
返回一个新数组,数组合并,参数可以是具体的值,也可以是数组对象。可以是任意多个。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
8、slice(start,end)
从已有的数组中返回选定的元素。返回一个新数组,包含从 start 到 end (不包括该元素)的中的元素。该方法不会改变现有的数组
9、join(separator)
把数组中的所有元素放入一个字符串(返回这个字符串)。元素是通过指定的分隔符进行分隔的。该方法不改变现有的数组
10、sort()
对数组的元素进行排序。参数可以为函数。该方法会改变原来的数组,而不会创建新的数组。
ES5提出的:
11、filter(function(currentValue,index,arr), thisObject)
thisObject : 可选。在执行回调函数时定义的this对象。如果省略了 thisValue ,”this” 的值为 “undefined”
不改变原有数组
12、map(function(currentValue,index,arr), thisValue)
map() 不会对空数组进行检测
不改变原有数组
13、some()
于检测数组中的元素是否满足指定条件(函数提供)。如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。
14、every()
every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)
every() 不会对空数组进行检测
不改变原有数组
15、forEach()
空数组是不会执行回调函数的
16、lastIndexOf(item,start)
可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,没找到返回-1。
17、indexOf()
18、findIndex()
返回传入一个测试条件(函数)符合条件的数组第一个元素位置, 如果没有符合条件的元素返回 -1
findIndex() 对于空数组,函数是不会执行的。
findIndex() 不改变数组的原始值。
19、find()
返回传入一个测试条件(函数)符合条件的数组第一个元素, 如果没有符合条件的元素返回 -1。
find() 对于空数组,函数是不会执行的。
find() 不改变数组的原始值。
20、copyWithin(target, start, end)
从数组的指定位置拷贝元素到数组的另一个指定位置中
target 必需。复制到指定目标索引位置。
start 必需。元素复制的起始位置。
end 可选。停止复制的索引位置 (默认为 array.length)
21、fill(value, start, end)
将一个固定值替换数组的元素
value 必需。填充的值。
start 可选。开始填充位置。
end 可选。停止填充位置 (默认为 array.length)
22、reduce(function(total, currentValue, currentIndex, arr), initialValue)
接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值
total 必需。初始值, 或者计算结束后的返回值。
currentValue 必需。当前元素
currentIndex 可选。当前元素的索引
arr 可选。当前元素所属的数组对象。
initialValue 可选。传递给函数的初始值