数组
定义
1.通过对象原型定义
//定义数组方式一
var arr = new Array();
console.log(arr)
console.log(arr.length)
Array只有一个参数且为数字,则数组长度为该数的值
var arr = new Array(5);
console.log(arr)//[]
console.log(arr.length)//5
Array只有一个参数且为字符串,则数组中的值为该字符串
var arr = new Array('你好')
console.log(arr)//['你好']
console.log(arr.length)//1
Array传入多个参数则代表数组具体的值
var arr = new Array(1,2,3,4,5);
console.log(arr)//[1,2,3,4,5]
console.log(arr.length)//5
2.通过[ ]定义
var arr = [2];//
console.log(arr)//[2]
console.log(arr.length)//1
var arr = ['小明','小红','小华'];
console.log(arr)
// 添加一个元素到数组
arr[5] = '小海';
console.log(arr);
console.log(arr.length)//6
// 修改指定下标元素的值
arr[2] = '小张';
console.log(arr)
// 删除指定下标的值、delete()删除值,保留键(下标)
// delete(arr[5])
// console.log(arr)
// console.log(arr.length)
// splice(index,num)删除数组指定下标的值,且不保留键
arr.splice(3,2)
console.log(arr)
注意:
length检测数组的长度
数组的下标只能为数字,从0开始计算
数组最大的下标 + 1 = 数组的长度
arr[index] = 值;
当index下标不存在则为添加 当index下标则为修改
数组的出栈入栈
push()
从数组的尾部压入一个元素
var arr = [1,2,3,4,5];
console.log(arr)
arr.push(6)
console.log(arr)//[1, 2, 3, 4, 5, 6]
pop()
从数组的尾部弹出一个元素
var arr = [1,2,3,4,5];
console.log(arr)
arr.pop()
console.log(arr)//[1, 2, 3, 4]
unshift()
从数组的头部压入一个元素
var arr = [1,2,3,4,5];
console.log(arr)
arr.unshift(0)
console.log(arr)//[0,1,2,3,4,5]
shift()
从数组的头部弹出一个元素
var arr = [1,2,3,4,5];
console.log(arr)
arr.shift()
console.log(arr)//[2,3,4,5]
数组的连接和拆分
concat()
concat():返回连接后的数组
var arr = [1,2,3]
var arr2 = [4,5,6]
var newArr = arr.concat('张三')
console.log(newArr)//[1,2,3,'张三']
var newArr = arr.concat(arr2)
console.log(newArr)//[1,2,3,4,5,6]
var arr3 = [8,9]
var newArr = arr.concat(arr2,arr3)
console.log(newArr)//[1,2,3,4,5,6,7,8,9]
join()
join()将数组按照指定的字符连接成字符串
var arr = ['最','近','很','凉','快'];
console.log(arr)
// join()默认按照逗号进行连接
var str = arr.join('')
console.log(str)
console.log(typeof str)
数组的截取
slice(start,[end])
一个参数:从指定下标开始截取,截取到最后
var arr = [1,2,3,4,5];
console.log(arr)
var newArr = arr.slice(2)
console.log(newArr)//[3,4,5]
// 从倒数第二个值开始截取,截取到最后
var newArr = arr.slice(-2)
console.log(newArr)//[4,5]
两个参数:从指定下标开始截取,截取到指定下标之前(不包含结束下标)
var arr = [1,2,3,4,5];
console.log(arr)
var newArr = arr.slice(2,4);
console.log(newArr)//[3,4]
注意:
slice()必须按照从左到右截取
var arr = [1,2,3,4,5];
console.log(arr)
var newArr = arr.slice(-1.-4);
console.log(newArr)//[]
splice(index,num,content)
//改变原数组
index:指定的某个下标
num:删除的个数
content:添加的内容
var arr = [1,2,3,4,5];
console.log(arr)
// 删除指定下标的值
arr.splice(2,1)
console.log(arr)
// 为数组添加内容
arr.splice(3,0,'老王')
console.log(arr)
// 修改指定下标的值
arr.splice(1,1,'张三')
console.log(arr)
\