数组(Array)是一种可以按顺序保存数据的数据类型
数组是按顺序保存,所以每个数据都有自己的编号 计算机中的编号从0开始,所以小明的编号为0,小刚编号为1,以此类推 在数组中,数据的编号也叫索引或下标 数组可以存储任意类型的数据
声明语法:
let 数组名 = [数据1,数据2,数据3,...];
let arr = ['西瓜','芝麻','萝卜','菠萝'];
取值语法:
数组名[下标]
let arr = ['西瓜','芝麻','萝卜','菠萝'];
arr[0] = '西瓜';
arr[1] = '芝麻';
获取数组长度
let arr = ['西瓜','芝麻','萝卜','菠萝'];
arr.length; // 5
数组遍历
let arr = ['鼠','牛','虎','兔','龙']
// 循环输入数组的元素
for (let index = 0; index < arr.length; index++) {
// 打印
console.log(array[index]);
}
操作数组
方法名 | 作用 |
---|---|
数组.push('元素') | 向数组最后面添加一个元素,并返回数组长度 |
数组.unshift('元素') | 向数组最前面添加一个元素,并返回数组长度 |
数组.pop() | 删除数组最后面一个元素,并返回这个值 |
数组.shift() | 删除数组最前面的一个元素,并返回这个值 |
数组.splice(1,2,'元素') | 从索引为 1 的元素开始,删除 2 个元素,并插入一个‘元素’ |
push()
let arr = ['苹果','香蕉'];
// push 数组方法,往数组最后追加一个元素
let num = arr.push('栗子');
console.log(num); // 3
console.log(arr); // '苹果','香蕉','栗子'
unshift()
let arr = ['black','red'];
let num = arr.unshift('yellow');// 在arr数组前面增加元素
console.log(num); // 3
console.log(arr); // 'yellow','black','red'
pop()
// 删除数组最末尾的元素,并返回这个值
let arr = ['烤面筋','烤肠','手抓饼','烤鸡腿'];
let last = arr.pop();
console.log(last); // 烤鸡腿
console.log(arr); // 烤面筋 烤肠 手抓饼
shift()
// 删除 数组的第一个元素,并返回值
let arr = ['烤面筋', '烤肠', '手抓饼', '烤鸡腿'];
let first = arr.shift();
console.log(first); // 烤面筋
console.log(arr); // 烤肠 手抓饼 烤鸡腿
splice()
// 删除
let arr = ['西瓜','芝麻','萝卜','菠萝'];
// arr.splice(想要删除元素的下标,从这个下标开始删除几个)
let s = arr.splice(1,1)
console.log(s); // 芝麻
console.log(arr); // 西瓜 萝卜 菠萝
// 增加
// 在下标为 1 的元素开始,删除 0个元素,并在此元素前面添加一个元素
arr.splice(1,0,'香瓜')
console.log(arr); // 西瓜 香瓜 芝麻 萝卜 菠萝
// 删除并增加(替换)
// 在下标为 1 的元素开始,删除 01个元素,并在此添加一个元素
arr.splice(1,1,'草莓');
console.log(arr); // 西瓜 草莓 萝卜 菠萝
补充
获取数组的最后一个元素 arr[arr.length - 1]
新增或者修改数组元素
arr[10]='南瓜'
1 如果 10这个位置已经有元素 那么 就是修改
2 如果 10这个位置没有元素 添加就可以了 最终数组的度变成 10+1
数组 可以存放任意类型的数据【建议 一个数组内的数据类型要统一】
let arr = ['西瓜', 100, null, true, NaN, undefined, 80];
数组快速清空或者删除元素的方式
arr.length = 0
保留 3个元素 其他不要了
arr.length = 3; // 后面的元素直接消失
\