JavaScript 数组常用操作
1、读取数组数据 for循环 或者for in循环
let data =[2000,1000,"AAA","BBB","CCC","abc",1000];
for(index in data){
console.log("for-in输出数据"+index+":"+data[index]);
}
for(let i=0;i<data.length;i++){
console.log("for 输出数据:"+i+":"+data[i]);
}
2、合并数组concat()
let data2A =[2000,1000,"AAA","BBB","CCC","abc",1000];
let data2B=["中国人","AABB",200]
var newData2=data2A.concat(data2B);
console.log("合并后数组:"+newData2);
3、数组变为字符串格式 join()
let data3 =[2000,1000,"AAA","BBB","CCC","abc",1000];
var newData3=data3.join();
console.log("数组转换成字符串:"+newData3);
4、删除数组第一个元素shift()
let data4 =["删除第一个",1000,"AAA","BBB","CCC","abc",1000];
let newData4=data4.shift();
console.log("返回删除的元素:"+newData4);
console.log("删除后数组:"+data4);
5、删除数组最后一个个元素pop()
let data5 =[2000,1000,"AAA","BBB","CCC","abc",1000,"删除最后一个"];
let newData5=data5.pop();
console.log("返回删除的元素:"+newData5);
console.log("删除后数组:"+data5);
6、数组开头添加一个元素unshift()
let data6=[2000,1000,"AAA","BBB","CCC","abc",1000];
var newData6=data6.unshift("开头添加一个元素");
console.log("返回添加后数组长度:"+newData6);
console.log("添加后数组:"+data6);
7、数组末尾添加一个元素 push()
let data7=[2000,1000,"AAA","BBB","CCC","abc",1000];
var newData7=data7.push("末尾添加一个元素");
console.log("返回添加后数组长度:"+newData7);
console.log("添加后数组:"+data7);
8、反转数组reverse()
let data8=["第一",2000,1000,"AAA","BBB","CCC","abc","倒数第一"];
let newData8=data8.reverse();
console.log("反转后数组:"+newData8);
9、数组排序 sort() a-b 升序 b-a 降序
let data9A=[-20,0,12,23,-200,100,300,-15];
let data9B=[-20,0,12,23,-200,100,300,-15];
let newData9A=data9A.sort(function(a,b){return b-a});
let newData9B=data9B.sort(function(a,b){return a-b});
console.log("降序:"+newData9A);
console.log("升序:"+newData9B);
10、slice截取数组 slice(start,end) 下标
let data10=["你好","AA","BBBB",200,"中国人"];
let newData10A=data10.slice(2);
let newData10B=data10.slice(-5);
let newData10C=data10.slice(2,4);
let newData10D=data10.slice(-5,-3);
console.log("原数组:"+data10);
console.log("1、只有起起始值,并且为正,默认的从起始位置一直到整个数组结束,起始下标从0开始:"+newData10A);
console.log("2、只有起起始值,并且为负,默认的从起始位置一直到整个数组结束,数组的最后一个下标是-1:"+newData10B);
console.log("3、有起始值和结束值,并且为正,截取的下标个数并不包含最后一个下标:"+newData10C);
console.log("4、有起始值和结束值,并且为负:"+newData10D);
11、数组删除、替换、添加 splice(index)
let data11A=["aaa","bbb","CCCC",200,"二丫"]
let data11B=["aaa","bbb","CCCC",200,"二丫"]
let data11C=["aaa","bbb","CCCC",200,"二丫"]
let data11D=["aaa","bbb","CCCC",200,"二丫"]
let newData11A=data11A.splice(2)
let newData11B=data11B.splice(2,1)
let newData11C=data11C.splice(2,1,"替换元素")
data11D.splice(2,0,"新添加的元素")
console.log("原数组:"+data11A);
console.log("删除指定下标后面所有元素:"+newData11A);
console.log("原数组:"+data11B);
console.log("删除指定下标开始,指定个数:"+newData11B);
console.log("原数组:"+data11C);
console.log("指定个数替换元素:"+newData11C);
console.log("原数组:"+data11D);
12、更改数组指定值
let data12=["你好","女",333,"BB","中国人"]
for(index in data12){
if(data12[index]=="中国人"){
data12[index]="小日本";
}
}
console.log("替换指定值:"+data12);
输出结果:
for-in输出数据0:2000
for-in输出数据1:1000
for-in输出数据2:AAA
for-in输出数据3:BBB
for-in输出数据4:CCC
for-in输出数据5:abc
for-in输出数据6:1000
for 输出数据:0:2000
for 输出数据:1:1000
for 输出数据:2:AAA
for 输出数据:3:BBB
for 输出数据:4:CCC
for 输出数据:5:abc
for 输出数据:6:1000
合并后数组:2000,1000,AAA,BBB,CCC,abc,1000,中国人,AABB,200
数组转换成字符串:2000,1000,AAA,BBB,CCC,abc,1000
返回删除的元素:删除第一个
删除后数组:1000,AAA,BBB,CCC,abc,1000
返回删除的元素:删除最后一个
删除后数组:2000,1000,AAA,BBB,CCC,abc,1000
返回添加后数组长度:8
添加后数组:开头添加一个元素,2000,1000,AAA,BBB,CCC,abc,1000
返回添加后数组长度:8
添加后数组:2000,1000,AAA,BBB,CCC,abc,1000,末尾添加一个元素
反转后数组:倒数第一,abc,CCC,BBB,AAA,1000,2000,第一
降序:300,100,23,12,0,-15,-20,-200
升序:-200,-20,-15,0,12,23,100,300
原数组:你好,AA,BBBB,200,中国人
1、只有起起始值,并且为正,默认的从起始位置一直到整个数组结束,起始下标从0开始:BBBB,200,中国人
2、只有起起始值,并且为负,默认的从起始位置一直到整个数组结束,数组的最后一个下标是-1:你好,AA,BBBB,200,中国人
3、有起始值和结束值,并且为正,截取的下标个数并不包含最后一个下标:BBBB,200
4、有起始值和结束值,并且为负:你好,AA
原数组:aaa,bbb
删除指定下标后面所有元素:CCCC,200,二丫
原数组:aaa,bbb,200,二丫
删除指定下标开始,指定个数:CCCC
原数组:aaa,bbb,替换元素,200,二丫
指定个数替换元素:CCCC
原数组:aaa,bbb,新添加的元素,CCCC,200,二丫
替换指定值:你好,女,333,BB,小日本