js中一切皆对象,所有对象有的方法在数组中都可以使用,下面来介绍一些常用方法
这里将来方法分为七种分别为:栈方法,队列方法,重排序方法,操作方法,位置方法,迭代方法,归并方法
一、栈方法 :模拟类似栈的LIFO(Last-In-First-Out)数据结构的一些方法
var fruits = [ "apple" ,"banana" ] ;
1、push : 在数组的末尾插入n项 ,返回新数组长度
eg : var count = fruits.push("peach") // 3
2、pop :在删除数组中的最后一项。返回删除项
eg :var count = fruits.pop() // 3
二、队列方法:队列的访问规则LIFO(Last-In-First-Out)模拟的方法
1、shift : 删除数组第一项,返回删除项
2、unshift : 数值前端插入n项,返回新数组长度
三、重排序方法:打乱数组顺序
1、reverse : 翻转数组项的顺序,返回新数组
eg :var newFruits = fruits.reverse() // [ "banana" ,"apple" ]
2、sort : 根据检测字符串的结果由小到大排序,返回新数组,可接受函数作为参数
eg :var arr = [ 1,3,15 ] ;
var sortArr = arr.sort() ; // [ 1,15,3 ]
因为都作为字符串处理,所有对于排序数字一般会传入一个函数 ;
function compare(value1,value2){
return value2-value1
};
对于大多数数据类型 ;
function compare((value1,value2)){
if( value1 < value2 ){
reutrn -1 ;
}else if( value1 > value2 ){
return 1 ;
}else{
return 0;
}
};
四、操作方法
1、concat : 连接n个数组,返回合并之后的数组,不会改变原数组
var arr1 = [ 1,2,3 ] ;
var arr2 = [ 4,5 ];
var arr3 = arr1.concat(arr2) // [1,2,3,4,5]
2、slice:基于原数组的一个或多个创建新数组 ( [ ) ),返回新数组,不会改变原数组 ,
var numberArr = [ 1,2,3,4,5,6,7 ];
var newNumber = numberArr.slice(1,4); // [ 2,3,4 ];
3、splice:删除,插入,替换操作数组 ( [ ] ),返回操作的部分并以数组形式返回,会改变原数组;
var numberArr = [ 1,2,3,4,5,6,7 ] ;
3.1 、删除,两个参数,删除第一项的位置以及删除的相熟
var newNumber = numberArr.splice(1,4); // [ 2,3,4 ,5];
3.2、插入 :三个参数,起始位置,删除的项数(0),插入的项
var newNumber = numberArr.splice(1,0,8,9); // [ 1,2,3,4,5,6,7,8,9];
3.3、替换:三个参数 第二个参数改为1 ;
五、位置方法
两种方法都接受两个参数,查找项和开始的索引(可选)
1、indexOf:数组索引0开始
2、lastIndexOf:数组最后一项开始
六、迭代方法和归并方法