数组
创建数组
//1)字面量
var arr = [1,2,3];
//2)使用构造函数创建
var arr = new Array();//创建一个空数组
var arr = new Array(7);//创建一个长度为7的数组(数组项都为undefined)
var arr = new Array('sexy','beauty','nice','lovely');//创建数组并同时写入数据
数组操作
数组访问
var arr = ['ps','ae','css'];
arr[0];//'ps'
arr[1];//'ae'
arr.length;//3
数组遍历
let arr = ['ps','ae','css'];
for(let i=0;i<arr.length;i++){
console.log(arr[i]);
}
//'ps' 'ae' 'css'
数组的方法
push:往数组尾部添加一个或多个元素,返回数组新的长度
let arr = ['ps','ae','css'];
console.log(arr.push('js'),arr);
// 4 ['ps','ae','css','js']
pop:删除数组最后一个元素,返回删除的元素
let arr = ['ps','ae','css'];
console.log(arr.pop(),arr);
//'css' ['ps','ae']
unshift:往数组开头添加一个或多个元素,返回数组新的长度
let arr = ['ps','ae','css'];
console.log(arr.unshift('js','vue'));//5
console.log(arr);// ["js", "vue", "ps", "ae", "css"]
shift:删除数组第一个元素,返回删除的元素
let arr = ['ps','ae','css'];
console.log(arr.shift());// 'ps'
console.log(arr);// ["ae", "css"]
splice(start,deleteNum,…items):在数组中插入、删除、替换的通用方法,返回被切数组
start:起始索引位置
deleteNum:要删除的数量
items:插入的元素(可以是多个)
let arr = ['ps','ae','css'];
console.log(arr.splice(1,2,'react','vue'));// ['ae','css']
console.log(arr);// ["ps", "react","vue"]
slice(start[,end]):返回数组的片段或子数组,从start开始到end(不包括end所对应的元素)
如果省略end参数,则截取到数组的最后一项
支持负数
不会影响原数组
let arr = ['ps','ae','css'];
console.log(arr.slice(1,2));// ['ae']
console.log(arr);// ["ps", "ae", "css"]
sort:将数组中的元素排序,并返回排序后的数组
let arr = ['ps','ae','css'];
console.log(arr.sort());//["ae", "css", "ps"]
reverse:将数组中的元素颠倒顺序,返回逆序后的数组
let arr = ['ps','ae','css'];
console.log(arr.reverse());//["css", "ae", "ps"]
join(separator) 返回字符串值,其中包含了连接到一起的数组的所有元素
separator为分隔符,默认为逗号
let arr = ['ps','ae','css'];
console.log(arr.join(" + "));//'ps + ae + css'
concat() 返回一个新数组,这个新数组是由调用这个方法的数组和参数组成
参数可以是多个
let arr = ['ps','ae','css'];
console.log(arr.concat('vue','react'))//["ps", "ae", "css", "vue", "react"]