数组的概念
数组对象是使用单独的变量名来存储一系列的值。
数组可以用一个变量名存储所有的值,并且可以用变量名访问任何一个值。
数组中的每个元素都有自己的的ID,以便它可以很容易地被访问到。
数组的创建
创建一个数组,有三种方法。
1.字面量方式(json方式)
vararr1=[];//创建一个空数组
vararr2=[5];//创建一个具有单个元素的数组
vararr3=[5,6,7];//创建一个具有多个元素的数组
2.构造函数方式(常规方式)
vararr1=newArray();//创建一个空数组
vararr2=newArray(5);//创建一个长度为5,值为空的数组
vararr3=newArray(5,6,7);//创建一个具有多个元素的数组
3.简洁方式:
varmyCars=newArray("Saab","Volvo","BMW");
4.new Array(n).fill()
1.创建一个数组并填充对应的数
vara=newArray(8).fill(0)
对应的结果:
[0,0,0,0,0,0,0,0]
2.默认数值:
num=newArray(2).fill()
对应的结果:
[undefined,undefined]
访问数组
通过指定数组名以及索引号码,你可以访问某个特定的元素。
1.以下实例可以访问myCars数组的第一个值:
varname=myCars[0];
2.以下实例修改了数组 myCars 的第一个元素:
myCars[0]="Opel";
数组方法
1.sort()数组排序
//没有函数参数,按字符编码格式排序
var arr = [3,2,3,34,12,23,234,84,9];
arr.sort();
// 结果: 12,2,23,234,3,3,34,84,9
varpoints=[40,100,1,5,25,10];
//数字升序
points.sort(function(a,b){returna-b});
//数字降序
points.sort(function(a,b){returnb-a});
//若数组的元素是数组,按元素的第一个数排升序
letreArr=[[0,1],[2,2],[3,3],[1,4]]
reArr.sort((a,b)=>a[0]-b[0]);//[[0,1],[1,4],[2,2],[3,3]]
2.filter()数组过滤
filter() 方法用于把Array中的某些元素过滤掉,然后返回剩下的未被过滤掉的元素。
//返回数组array中所有元素都大于14的元素
constarray=[14,17,18,32,33,16,40];
constnewArr=array.filter(num=>num>14)
console.log(newArr);//打印 [17,18,32,33,16,40]
// 查找某个值------------------------------------------
constarray=[14,17,18,32,33,16,40];
constnewArr=array.filter(num=>num==14)
console.log(newArr);//打印 [14]
//返回大于某个值和小于某个值的元素
constarray=[14,17,18,32,33,16,40];
constnewArr=array.filter(num=>num>14&&num<33)
console.log(newArr);//打印 [17, 18, 32, 16]