1.push()
var arr = [1,2,4];
console.log(arr.push(3,2)) //5
arr[6]=8
console.log(arr) //[1, 2, 3, 2, undefined, 8]
- 可以向数组的末尾添加一个或多个元素
- 返回新的数组长度
- 改变原来的数组长度和元素
2. pop()
var arr = [1,2,4];
console.log(arr.pop()) //4
arr[4] = 6;
console.log(arr) //[1, 2, undefined, undefined, 6]
- 从数组中删除最后一个元素
- 返回被删除的元素
- 改变原来数组的长度和元素
3.shift()
var arr = [1,2,4];
console.log(arr.shift()) //1
arr[4] = 6;
console.log(arr) //[1, 2, undefined, undefined, 6]
- 从数组中删除第一个元素
- 返回被删除的元素
- 改变原来数组的长度和元素
4.unshift()
var arr = [1,2];
console.log(arr.unshift(5,6))//4
arr[5] = 8;
console.log(arr) //[5, 6, 1, 2, undefined, 8]
- 在数组的开头添加一个或多个元素
- 返回添加后新数组的长度
- 改变原来数组的长度和元素
5.join()
var arr = [1,2,4];
console.log(arr.join('--')) //"1--2--4"
console.log(arr)//[1, 2, 4]
- 将数组中的元素以join中的字符串参数链接,拼接成字符串
- 返回拼接后的字符串
- 不改变原来的数组长度和元素
6.splice
var arr = [1,2,3,4];
console.log(arr.splice(1,2,8,9))//[2,3]
console.log(arr) //[1,8,9,4]
arr.splice(1,0,5,6)
console.log(arr)//[1,5,6,8,9,4]
- 删除原来数组的元素,并插入新的元素(也可以不删除只插入元素)
- splice(index,count,item···)
- 第一个参数为要进行操作开始位置,比如index为1,则从arr[1]元素开始删除。
- count,删除的元素个数,若为0则不删除元素,则从该arr[1]之前开始插入新的元素
- item,添加的数组元素,若不制定元素,则只做删除动作。
- 返回被删除后的元素数组,若不删除数组,则返回空数组
- 改变原数组的长度和元素
7.sort()
var arr = [9,10,4,6,8];
console.log(arr.sort())//[10, 4, 6, 8, 9]
console.log(arr)//[10, 4, 6, 8, 9]
console.log(arr.sort(function(a,b){
return a-b;
}))//[4, 6, 8, 9, 10]
console.log(arr)//[4, 6, 8, 9, 10]
- 对数组的元素进行排序,是用字符串的编码顺序进行排序
- 若有比较函数,比较函数中的参数为正在排序的两个元素。
- 若a小于b,在排序后的数组,a在b的前面,则返回一个小于0的值
- 若a=b,则返回0
- 若a大于b,则返回一个大于0的值
- 返回排序后新的数组
- 原来的数组被新数组替代
8.reverse()
var arr = [1,2,3]
console.log(arr.reverse())//[3, 2, 1]
console.log(arr)//[3, 2, 1]
- 颠倒原来数组的顺序
- 返回被颠倒后的数组
- 原数组被新数组替换
9.concat()
var arr=[1,2,3];
var arr1=[4,5];
var arr2=[6,7];
console.log(arr.concat(arr1,arr2))//[1, 2, 3, 4, 5, 6, 7]
console.log(arr)//[1,2,3]
- 合同两个或多个数组成一个数组
- 返回拼接后的数组
- 不改变原来的数组