数组的操作
文章目录
1.数组的定义
两种方式
var arr=["Jack","MaLi","LiLi"];
var arry=new Array(1,2,3,4,5); //这个方法不建议使用
2.数组的基本操作
var arr=["Jack","MaLi","LiLi"];
console.log(arr[0]); //打印Jack
//数组索引从0开始
console.log(arr[2]); //直接索引取值["LiLi"]
arr[2]="张三";//修改值
console.log(arr[2]);//输出张三
console.log(arr); //打印 ['Jack', 'MaLi', '张三']
//添加值
var arry=[5,4,3,2,1];
arry[5]=6;
console.log(arry);//打印结果 [5, 4, 3, 2, 1, 6]
arry[8]=6;
console.log(arry);// 打印结果[5, 4, 3, 2, 1, …, 6] 不建议 存在空洞
3.数组的方法
3.1 length数组长度
var arry=[1,2,3,4,5];
var a=arry.length;
console.log(a);//输出5
3.2 push 添加和pop 删除
var arry=[5,4,3,2,1];
var c=arry.push(6); //push的返回值是6 数组长度
console.log(arry);// 打印结果 [5, 4, 3, 2, 1, 6]
//对应方法 pop 弹栈
var arr=["Jack","MaLi","LiLi"];
arr.pop();//删除最后一个元素
console.log(arr);//结果['Jack', 'MaLi']
3.3 instanceof 和Array.isArray 判断数组
//方法一
var arry=[5,4,3,2,1];
var c=Array.isArray(arry);//判断是否为数组
console.log(c); //true
//方法二
var arr=["Jack","MaLi","LiLi"];
var d=arr instanceof Array;
console.log(d);//true
3.4 toString 逗号分隔
//toString()方法把数组转成数组值字符串逗号隔开
var arr=["Jack","MaLi","LiLi"];
var a=arr.toString();
console.log(a); //输出结果 Jack,MaLi,LiLi
3.5 join 自定义分隔
//join()和toString类似 不同在于可以自己定义分隔符
var arr=["Jack","MaLi","LiLi"];
var a=arr.join(".");
console.log(a); //输出结果 Jack.MaLi.LiLi
3.6 位移元素 shift 方法
var arr=["Jack","MaLi","LiLi"];
arr.shift();
console.log(arr);//删除首个元素 ['MaLi', 'LiLi']
3.7 unshift 添加元素
var arr=["Jack","MaLi","LiLi"];
arr.unshift("One"); //返回数组长度
console.log(arr);//和push不同 unshift添加在首位['One', 'Jack', 'MaLi', 'LiLi']
3.8拼接方法 splice 连接方法 concat
//splice
var arr=["Jack","MaLi","LiLi"];
arr.splice(1,0,"Name","Age"); //1 表示从索引1开始添加或删除 0表示要删除的元素 添加的元素
console.log(arr);//输出 ['Jack', 'Name', 'Age', 'MaLi', 'LiLi']
//concat
var arr=["Jack","MaLi","LiLi"];
var arr1=["Name","Sex","Age"]
var c=arr.concat(arr1); //联合后返回的数组是新的空间
console.log(c); //输出 ['Jack', 'MaLi', 'LiLi', 'Name', 'Sex', 'Age']
3.9 切割数组 slice方法
var arr=["Jack","MaLi","LiLi"];
var b= arr.slice(2);
console.log(b); //输出结果['LiLi']
var arr=["Jack","MaLi","LiLi"];
var b= arr.slice(1,2);//切第 1 个元素 和 第2个元素(不包括第2个)的后部
console.log(b);//['MaLi']
var c=arr.slice(1,3); // 3后面没有值
console.log(c);//['MaLi', 'LiLi']
4.数组排序
4.1 sort 方法排序
//sort() 数值型排序
var arry=new Array(5,4,3,2,1);
var a=arry.sort();
console.log(a); //打印 [1, 2, 3, 4, 5]
4.2 reverse 元素反转
var arry=[5,4,3,2,1];
var a=arry.reverse();
console.log(a);//输出 [1, 2, 3, 4, 5]
5.Math求数组最值
5.1 max 和 min
var arry=[5,4,3,2,1];
var max=Math.max.apply(null,arry); //这里的null 用来占位
var min=Math.min.apply(null,arry);
console.log(max); //5
console.log(min);//1
6.数组遍历
//只写了最初始的
var arr=["Jack","MaLi","LiLi","Name"];
for(var i=0;i<=arr.length-1;i++){
console.log(arr[i]); //循环遍历
}