一、增加
1.push()
语法:arrayObject.push(newele1,newele2,…,neweleX);
功能:将push中的参数添加到arrayObject的尾部
返回值:把指定的值添加到数组后的新长度
例:
var arr = [8,7,5,2,8,4,3];
var arrLen = arr.push("u","r","g");
console.log(arrLen); //10
console.log(arr); //[8, 7, 5, 2, 8, 4, 3, "u", "r", "g"]
2.unshift()
语法:arrayObject.unshift(newele1,newele2,…,neweleX);
功能:将unshift中的参数添加到arrayObject的尾部
返回值:把指定的值添加到数组后的新长度
例:
var arr = [8,7,5,2,8,4,3];
var arrLen = arr.unshift("u","r","g");
console.log(arrLen); //10
console.log(arr); //["u", "r", "g", 8, 7, 5, 2, 8, 4, 3]
二、删除
1.pop()
语法:arrayObject.pop()
功能:删除arrayObject的最后一个元素
返回值:被删除的元素
例:
var arr = [8,7,5,2,8,4,3];
var arrEle = arr.pop();
console.log(arrEle); //3
console.log(arr); //[8, 7, 5, 2, 8, 4]
2.shift()
语法:arrayObject.shift()
功能:删除arrayObject的第一个元素
返回值:被删除的元素
例:
var arr = [8,7,5,2,8,4,3];
var arrEle = arr.shift();
console.log(arrEle); //8
console.log(arr); //[7, 5, 2, 8, 4, 3]
三、分隔数组
1.join()
语法:arrayObject.join(separator)
功能:用separator(分离器)分隔数组,并放入一个字符串
返回值:字符串
例:
var arr = [8,7,5,2,8,4,3];
var newStr = arr.join("—");
console.log(newStr); //8—7—5—2—8—4—3
console.log(arr); //[8, 7, 5, 2, 8, 4, 3]
四、翻转数组
1.reserve()
语法:arrayObject.reserve()
功能:颠倒数组中元素的顺序
返回值:数组
例:
var arr = [8,7,5,2,8,4,3];
var newArr = arr.reverse();
console.log(newArr); //[3, 4, 8, 2, 5, 7, 8]
console.log(arr); //[3, 4, 8, 2, 5, 7, 8]
五、数组排序
1.sort()
语法:arrayObject.sort()
功能:对数组的元素进行排序,及时数组中的每一项都是数值,sort()方法比较的也是字符串;但是sort()可以接收一个比较函数作为参数
升序——arr.sort(function(a,b){return a-b})
降序——arr.sort(function(a,b){return b-a})
返回值:数组
例
var arr = [8,7,5,2,8,4,3];
var newArr = arr.sort(function(a,b){return b-a});
console.log(newArr); //[8, 8, 7, 5, 4, 3, 2]
console.log(arr); //[8, 8, 7, 5, 4, 3, 2]
六、连接数组
1.concat()
语法:arrayObject.concat(array1,array2……)
功能:连接两个或多个数组
返回值:新数组
例
var arr = [8,7,5,2,8,4,3];
var myArr = ["y","e","w","t"];
var newArr = arr.concat(myArr);
console.log(newArr); //[8, 7, 5, 2, 8, 4, 3, "y", "e", "w", "t"]
console.log(myArr); //["y", "e", "w", "t"]
console.log(arr); //[8, 7, 5, 2, 8, 4, 3]
七、截取数组
1.slice()
语法:arrayObject.slice(start,end)
功能:从数组中截取选定元素
返回值:截取的新数组
参数:
start(必需):规定从何处开始选取,为负则从尾部开始
end(可选):规定从何处结束选取,是数组截取结束处的数组下标;若未指定end,从start至数组结束
例
var arr = [8,7,5,2,8,4,3];
var newArr1 = arr.slice(1, 3);
var newArr2 = arr.slice(-3,-1);
console.log(newArr1); //[7, 5]
console.log(newArr2); //[8, 4]
console.log(arr); //[8, 7, 5, 2, 8, 4, 3]
八、查找数组
1.indexOf()
语法:arrayObject.indexOf(searchValue,startIndex)
功能:从数组的开头(下标0)开始向后查找,判断方式——全等
返回值:number,查找的项在数组中的位置(索引值),未找到的返回-1
参数:
searchValue(必需):要查找的元素
startIndex(可选):起点位置的索引,不选默认为0
例:
var arr = [8,7,5,2,8,4,3];
var newIndex1 = arr.indexOf(8);
var newIndex2 = arr.indexOf(8,2);
var newIndex3 = arr.indexOf(9);
console.log(newIndex1); //0
console.log(newIndex2); //4
console.log(newIndex3); //-1
2.lastIndexOf()
语法:arrayObject.lastIndexOf(searchValue,startIndex)
功能:从数组的末尾开始向前查找,判断方式——全等
返回值:number,查找的项在数组中的位置(索引值),未找到的返回-1
参数:
searchValue(必需):要查找的元素
startIndex(可选):起点位置的索引,不选默认为数组最后一位
例
var arr = [8,7,5,2,8,4,3];
var newIndex1 = arr.lastIndexOf(8);
var newIndex2 = arr.lastIndexOf(8,2);
var newIndex3 = arr.lastIndexOf(9);
console.log(newIndex1); //4
console.log(newIndex2); //0
console.log(newIndex3); //-1
九、删除、插入——splice
1.splice() —— 删除指定位置的指定元素
语法:arrayObject.splice(index,count)
功能:删除从index处开始的0个或多个元素
返回值:数组,从原数组中删除的元素
参数:
index:起始位置的下标
count:要删除的元素数量,不设置,从index开始的所有
例
var arr = [8,7,5,2,8,4,3];
var newArr = arr.splice(1,3);
console.log(newArr); // [7,5,2]
console.log(arr); // [8, 8, 4, 3]
2.splice() —— 在指定位置的插入元素
语法:arrayObject.splice(index,count,item1,item2…)
功能:在指定位置插入一个或多个元素
返回值:数组,从原数组中删除的元素
参数:
index:起始位置的下标
count:要删除的元素数量,设为0,不删除元素
item:要插入的元素,插在index前
例
var arr = [8,7,5,2,8,4,3];
var newArr = arr.splice(1,0,"item1","item2");
console.log(newArr); // []
console.log(arr); // [8, "item1", "item2", 7, 5, 2, 8, 4, 3]
3.splice() —— 同时插入和删除
语法:arrayObject.splice(index,count,item1,item2…)
功能:在指定位置插入一个或多个元素
返回值:数组
参数:
index:起始位置的下标
count:要删除的元素数量
item:要插入的元素,插在index前
返回值:数组,从原数组中删除的元素
例
var arr = [8,7,5,2,8,4,3];
var newArr = arr.splice(1,2,"item1","item2");
console.log(newArr); // [7,5]
console.log(arr); // [8, "item1", "item2", 2, 8, 4, 3]