Javascript-数组方法篇

上一篇很简单的写说了什么是数组,这篇文章的是主要介绍数组的方法。简单的总结一些方法的基本使用。并没有深入得去解剖。

1.push()/unshift()

push()是从数组最后添加数组元素。并返回数组的长度

var array = [];
console.log(array.push('a','b','c'));//3
console.log(array);//a,b,c

unshift()是从数组的最前面添加数组元素,并返回数组的长度

var array = [1,2,3];
console.log(array.unshift('a','b','c'));//6
console.log(array);//1,2,3,a,b,c

2:slice(index1,index2)

slice()是截取数组中的一部分,返回一个新的数组,不改变原来的数组,参数是从数组的键名起始位置到结束位置,不包含结束位置。

var array = [1,2,3];
console.log(array.slice(0,1));//a

3.splice(index,howmany,item1,item2)是可以对数组进行修改,增加或者是删除元素的方法,第一个参数是键名的起始位置,第二个是个数删除或者添加的个数,第三个是数组或者是数组元素。

3.1:只有两个参数,相当于删除数组的长度,

var array = [1,2,3];
console.log(array.splice(0,2));//[1,2] 返回一个新的数组
console.log(array);//[3] 原来数组被改变

3.2 :有三个以上的参数,是直接在数组的指定位置直接插入,第二个参数设置为零则是不删除,不设置则默认为删除到结束。

var array = [1,2,3];
console.log(array.splice(1,0,'a','b','c'))
console.log(array);//[1, "a", "b", "c", 2, 3] 原来数组被改变

4.concat()是创建并返回一个新的数组,会包过调用数组的全部元素和参数,但不会改变原来数组。

var array = [1,2,3];
console.log(array.concat(1,0,'a','b','c'))//[1, 2, 3, 1, 0, "a", "b", "c"]
console.log(array);//[1, 2, 3] 原来数组不会被改变

5.pop()和shift()   pop()是删除数组的最后一个元素,shift()是删除数组的最前面的一个元素,并返回删除的元素

var array = [1,2,3];
console.log(array.pop())//3
console.log(array.shift())//1
console.log(array);//[2] 原来数组被改变

6.sort() 是将数组按从小到大排列或者是从大到小排列,参数是一个函数,返回a-b是从小到大,返回b-a则是从大到小。

var array = [1,2,3,6,678,43,423,22,13,353];
array.sort(function(a,b){
    return a-b;
})

console.log(array);//[1, 2, 3, 6, 13, 22, 43, 353, 423, 678]
array.sort(function(a,b){
    return b-a;
})

console.log(array);//[678, 423, 353, 43, 22, 13, 6, 3, 2, 1]

7.join()是将数组中的所有元素转化成字符串,不指定分隔符将默认以逗号作为分隔符,也可以自己指定分隔符。

var array = [1,2,3,4,5,5,6,6,7,7];
console.log(array.join());//1,2,3,4,5,5,6,6,7,7

var arrayString = ['a','b','c','d','e','f'];
console.log(arrayString.join('/'));//a/b/c/d/e/f

8.reverse() 是数组中的元素逆序,返回的数组是其本身,原来的数组已经被改变了

var array = [1,2,3,4,5,6,7,8];
console.log(array.reverse());//[8, 7, 6, 5, 4, 3, 2, 1]
console.log(array);//[8, 7, 6, 5, 4, 3, 2, 1]原数组被改变了
原文地址:https://www.cnblogs.com/majidaozi/p/6743429.html