数组:数组用来在单独的变量名中存储一系列的值。
-
数组也是一个对象
-
他和普通对象功能类似,也是用来存储一些值的
-
不同的是普通对象是使用字符串作为属性名的,而数组是使用数字来作为索引操作元素的
//创建数组对象 var arr = new Array();
//使用typeof检查一个数组时,会返回object console.log(typeof arr);
索引
-
从0开始的整数就是索引
-
数组的存储性能比普通对象要好,在开发中经常使用数组来存储一些数据
向数组中添加对象
-
语法:数组[索引] = 值
-
向数组的最后一个位置添加元素:
-
语法:数组[数组.length]=值
读取数组中的元素
-
语法:数组
-
[索引] = 值
-
如果读取不存在的索引,不会报错会返回undefined
arr[0]=10; arr[1]=33;
arr[2]=12;
arr[10]=1212;
//读取数组中的元素
console.log(arr[1]);
获取数组的长度
-
可以使用length属性来获取数组的长度
-
语法:数组.length
-
对于连续的数组,使用length属性获取数组的长度(元素的个数)
-
对于非连续的数组,获取数组的长度是最大的索引+1
//读取不存在的元素会返回undefined console.log(arr[2]); //length获取数组的长度(元素的个数) console.log(arr.length);
修改length
-
如果修改的length大于原长度,则多出部分会空出来
-
如果修改的length小于原长度,则多余的元素会被删除
数组创建
一维数组的创建方法,每个数组的下标值从0开始
var classmate=new Array();
classmate[0]=“smith";
classmate[1]=“john";
classmate[2]=“bill";
或者
var class=new Array(“smith”, ”jonh” , ”bill”);
使用字面量创建对象
var arr = [ 1,2,3]
//使用字面量创建数组
var arr2=[1,2,3,4,5,6,7,8,9,10];
console.log(arr2);
使用构造函数创建对象
也可以同时添加元素,将要添加的元素作为参数传递,元素中间使用逗号隔开
-
数组中的元素可以是任意数据类型,也可以是个对象
-
数组中的元素也可以是数组
//使用构建函数创建数组
var arr3=new Array(10,20,30);//创建一个长度为10的数组 var arr4=new Array(10);
console.log(arr4.length);//创建一个长度为10的数组
var arr4=new Array(10);
console.log(arr4.length);
数组的四个方法
push( )方法
-
该方法可以在数组的末尾添加一个或多个元素,并返回数组新的长度
-
可以将要添加的元素作为方法的参数传递,这些元素将自动添加到数组的末尾
-
该方法会将数组新的长度作为返回值返回
//创建一个数组
var arr = ["孙悟空","猪八戒","沙和尚"];//利用数组的长度在末尾添加元素 arr[arr.length]="蜘蛛精";
//push()在数组末尾添加元素,并返回数组新的长度 var result=arr.push("唐僧");
console.log(arr);
console.log("result="+result); //result=5数组的长度
pop( )方法
-
该方法可以删除数组的最后一个元素,并将被删除的元素作为返回值返回
//pop()删除数组的最后一个元素,并将被删除的元素最为返回值返回 var result=arr.pop(); console.log(arr); console.log("result="+result);
unshift( )方法
-
该方法可以向数组的开头添加一个或多个元素,并将数组新的长度作为返回值返回
-
向前边插入元素以后,其他元素的索引会依次调整
//unshift()向数组的开头添加一个或多个元素,并返回数组新的长度 arr.unshift("牛魔王","二郎神");
console.log(arr);
shift( )方法
-
该方法可以删除数组的第一个元素,并将被删除的元素作为返回值返回
//shift()删除数组的第一个元素,并将被删除的元素最为返回值返回 var result=arr.shift();
console.log(arr);
console.log("result="+result);