数组的创建
数组的创建方式有三种:构造函数方式,字面量方式,ES6新增的Array.of()方法创建。
构造函数方式
let arr = new Array(); //创建一个空数组
let arr = new Array(10); //创建一个长度为10的空数组
let arr = new Array('a'); //创建一个元素包含字符串a的数组
let arr = new Array(10,'a'); //创建包含10和字符串a两个元素的数组
小结:
1,new关键字是可以省略的
2,当只传一个number类型参数时,创建的是参数指定长度的数组,即构造函数创建数组,不能创建只包含一个number类型元素的数组。
字面量方式:
let arr = [10,'a']; //字面量方式,即直接给数组赋值
Array.of()方法(ES6新增):
方法的作用是将一组值(即传进来的参数),转换为数组。
这个方法弥补了,构造函数创建数组的不足,可以实现创建只有一个number类型元素的数组
let arr = Array.of(3);
console.log(arr); // [3]
参数可以是各种类型
let arr1 = Array.of(1,'a',true,null,undefined,{name:"zhangsan"},[45]);
console.log(arr1); // [1,'a',true,null,undefined,{name:"zhangsan"},[45]];
数组的检测:
两种较为准确的检测方法:
1,利用对象的toString方法
Object.prototype.toString().call([]) === "[object Array]"; // true
Array.isArray();
Array.isArray([1,2,3]); // true
数组的属性:
length属性:作用:
设置或返回数组的长度;
可用来增加和删除数组项;
let arr = [1,2];
arr.length = 1;
console.log(arr); // [1]
arr.length = 3;
console.log(arr); // [1, , ]
数组的方法
JavaScript的数组方法包括数组原型的方法,构造函数的方法(ES6新增部分);
针对每一个方法我们主要了解四个方面:作用,参数,返回值,原数组是否改变。
(一).原型上的方法
1,push():
作用:向数组末尾添加一项或多项,
参数:ele1[,ele2[,...[,elen]]]
返回值:添加元素后数组的长度
原数组是否改变:是
let arr = [1,2,3];
let temp = arr.push('a','b');
console.log(arr,temp); // [1,2,3,'a','b'] 5
2, pop():
作用:删除数组最后一项,
参数:无
返回值:删除的那一项,
原数组是否改变:是
let arr = [1,2,3];
let temp = arr.pop();
console.log(arr,temp); // [1,2] 3
3, unshift():
作用:向数组开头添加一项或多项,
参数:ele1[,ele2[,...[,elen]]]
返回值:添加元素后数组的长度
原数组是否改变:是
let arr = [1,2,3];
let temp = arr.unshift('a','b');
console.log(arr,temp); // ['a','b',1,2,3] 5
4,shift():
作用:删除数组第一项;
参数:无
返回值:删除的那一项;
原数组是否改变:是
(loading)