数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些:
1.join() // 只接收一个参数:即分隔符,(不改变原数组)数组转为字符串
2.push() // 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。
(原数组改变)
3.pop() // 数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。 (改变原数组改变)
4.shift():// 删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。 (改变原数组)
5.unshift:// 将参数添加到原数组开头,并返回数组的长度 。(改变原数组)
6.sort 按升序排列数组项——即最小的值位于最前面,最大的值排在最后面
在排序时,sort()方法会调用每个数组项的 toString()转型方法,然后比较得到的字符串,以确定如何排序。即使数组中的每一项都是数值, sort()方法比较的也是字符串,因此会出现以下的这种情况:
7.reverse() 将数组反转,返回值是反转后的数组 改变原数组
8.concat() 连接两个数组 返回值为连接后的新数组 不改变原数组
9 arr.slice(start,end) 切去索引值start到索引值end的数组,不包含end索引的值,返回值是切出来的数组
([start, end}) 不改变原数组
10.splice()
//删除splice(起始位置,长度),改变原数组
//插入splice(起始位置、要删除的项数,要插入的项)改变原数组
//替换, splice(起始位置、要删除的项,要插入的任意数量的项) 改变原数组
- indexOf()和 lastIndexOf() (ES5新增)
- forEach() (ES5新增)
- map() (ES5新增)
- filter() (ES5新增)
- every() (ES5新增)
- some() (ES5新增)
- reduce()和 reduceRight() (ES5新增)