在数组的开头添加元素;

使用的是splice()方法

arr.splice(index,0,元素);
index:是插入的位置 元素: 要插入的元素
var arr = [1,2,3,4];
arr.splice(0,0,5);
结果: console.log(arr); [5,1,2,3,4]

在数组的后面添加元素;
使用的是push()方法,并且返回数组的长度
var arr = ['king','tom'];
arr.push(item);
结果: console..log(arr); ['king','tom','item']

在数组的前面添加元素

使用的是unshift()方法,并且返回数组的长度
var arr = [];
arr.unshift(item);

删除数组中最后一个元素;

使用的是pop()方法
var arr = [1,2,3,4,5];
arr.pop();
结果: console.log(arr); [1,2,3,4]

删除数组中第一个元素;

使用的是shift()方法;
var arr = [1,2,3,4];
arr.shift();
结果: console.log(arr); [2,3,4]

合并数组

合并两个或者多个数组的方法是concat() 并返回结果
var arr = [1,2,3];
var arr2 = [4,5,6];
arr.concat(arr2);
console.log(arr); [1,2,3,4,5,6]
apply()方法的使用:apply()方法有一个特性,就是func.apply(obj,avgr),avgr是一个数组

IndexOf()方法, 元素第一次出现的位置;lastIndexOf,元素最后一次出现的位置

例如: 查询数组中出现过多次的元素有哪些;
function findMoreMonth(arr){
var result = [];
arr.forEach(function(elem){
if(arr.indexOf(elem) != arr.lastIndexOf(elem) && arr.indexOf(elem)==-1){
result.push(elem);
}
})
return result;
}

IndexOf(searchvalue,fromindex);方法有两个参数
参数1:seachervalue参数2:fromindex必选可选规定需要检索字符串的值规定字符串中检索开始的位置

fromindex:它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。

lastIndexOf(seachervalue,fromindex);方法也有两个参数
参数1:seachervalue参数2:fromindex必选可选规定需要检索字符串的值规定字符串中检索开始的位置

fromindex:它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符开始检索。
提示: 这两个方法,如果需要检索的字符串没有出现,则返回值是 -1 。

filter()方法; 方法的作用是对数组的过滤处理操作:

filter() 把传入的函数一次作用到每一个元素上,根据返回值是true,还是false,进行决定这个元素是保留还是丢弃。
例如: var a = [1,2,3,4,5,6];
var r = a.filter(function(x){
return x === 3;
});
console.log(r); 打印的结果是: 3。
注意: filter() 返回的是一个数组 ;并且不会对空数组进行检测 ; 不会改变原数组;
arr.fillter(function(currentValue, index,arr),thisValue)

函数currentValueindexarrthisValue必须必须可选可选可选数组中每个元素都会执行这个函数当前元素值当前元素的索引值当前元素属于的数组对象对象作为该执行回调时使用,传递给函数,用作 "this" 的值。如果省略了 thisValue ,"this" 的值为 "undefined"

简单的示例: 使用filter()方法实现去重;
var arr = [1,2,3,4,1,2,5];
var arr2 = arr.filter(function(elem,index,self){
return self.IndexOf(elem) === index;
})
结果打印: console.log(arr2); [3,4,5]