在平时开发中,对数组进行操作是一个比较重要,也是比较基础的一个板块!今天我就在这里总结一下我们常用的数组的是个方法,也相当于做一个笔记
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>数组的常用方法总结</title>
</head>
<body>
<script>
// 1、push()方法,在数组的末尾添加一个或者多个元素,并返回数组的新长度
let pushArr=[1,2,3,4,5]
var longth=pushArr.push(6,7);
console.log(pushArr, longth);//[1,2,3,4,5,6,7]7
//2、pop()方法,删除索引值最大的元素,并返回被删除的元素。
let popArr=[1,2,3,4,5]
var delElement=popArr.pop();
console.log(popArr, delElement);//[1,2,3,4]5
// 注意:此时返回的5是最大值,而不是数组长度,该方法不返回数组长度;
//3、unshift()方法,在数组的头部添加一个或多个元素,并返回数组的新长度
let unshiftArr=[1,2,3,4,5]
var length= unshiftArr.unshift(0);
console.log(unshiftArr,length);//[0, 1, 2, 3, 4, 5] 6
//4、shift()方法,与上面的方法相反,是删除索引为0的元素,并返回删除的元素
let shiftArr=[1,2,3,4,5]
var delshift= shiftArr.shift();
console.log(shiftArr, delshift);//[2, 3, 4, 5] 1
//5、concat()方法,合并数组或元素,返回新的数组,原数组不会改变
let concatArr=[1,2,3,4,5]
let newArr=concatArr.concat([6,7,8],9,10);
console.log(newArr,concatArr);//[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] [1, 2, 3, 4, 5]
// 注意:concat()还可以复制一个新数组;
let copyArr=concatArr.concat(); //copyArr的值和concatArr的相同
// 6、splice()方法,在任意位置添加或删除元素,返回删除或被替换的值,如果没有被删除或替换则返回空数组;
//splice()方法会修改原数组的值;只有一个值时,从当前位置删除到数组末尾
let spliceArr=[1,2,3,4,5]
let num1=spliceArr.splice(1)
console.log(num1,spliceArr)//num=[2,3,4,5] spliceArr=[1];
//有两个值时,第一个值为删除的位置,第二个值为删除的个数;
let spliceArr2=[1,2,3,4,5]
let num2=spliceArr2.splice(2,3)//删除从索引值2开始的3个元素
console.log(num2,spliceArr2);// num1=[3,4,5] spliceArr2=[1,2]
//有三个或者多个值时,第一个值为插入元素的位置,第二个值为替换的个数,后面的值都为插入的新元素;
let spliceArr3=[1,2,3,4,5]
let num3=spliceArr3.splice(2,1,6,7,8);//从索引值2开始替换掉1个元素,并且插入6,7,8
//如果第二个值为0,则不替换,直接插入6,7,8;
console.log(num3 , spliceArr3); //num3=[3] spliceArr3=[1,2,6,7,8,4,5]
//7、slice()方法,截取复制数组指定位置的内容。
// slice(开始位置,结束位置);第二个参数不写默认到尾部,只能从前往后截取;返回的值为截取到的内容形成的新数组;
// 不修改原数组
let sliceArr=[1,2,3,4,5];
let copySliceArr=sliceArr.slice(); // slice()或者slice(0)都可以复制数组;
let newCopyArr=sliceArr.slice(1,3);//截取索引1到索引3(不包括3)的值;
console.log(newCopyArr,sliceArr);//newCopyArr=[2,3] sliceArr=[1,2,3,4,5];
// 8、join()方法,指定字符连接字符串;
// 数组的每个元素以指定的字符连接形成新字符串返回;
let joinArr=[1,2,3,4,5];
let newJoinArr=joinArr.join()//默认用逗号连接
console.log(newJoinArr);//newJoinArr=1,2,3,4,5;
//如果连接符为空字符串,则会无缝连接
console.log(joinArr.join(""));//输出为12345;
// 9、sort()方法,将数组进行排序
// 将数组进行排序(升序),返回新数组,原数组也会改变;
let sortArr=[2,3,5,1,4];
let newsortArr=sortArr.sort();
console.log(newsortArr,sortArr);//newsortArr=[1,2,3,4,5] sortArr=[1,2,3,4,5]
// 10、reverse()方法,将数组进行倒序
// 可以将数组进行倒序,并返回新数组,原数组也会随之改变;
let reverseArr=[1,2,3,4,5];
let newreverseArr=reverseArr. reverse();
console.log(newreverseArr,reverseArr);//newreverseArr=[5,4,3,2,1] reverseArr=[5,4,3,2,1];
</script>
</body>
</html>