数组的概念
1.数组是什么? : 是一种复杂数据类型
2.数组作用? : 可以在变量中 ‘存储多个数据’
3.数组内存原理? : 数组内存由三个部分组成(数组三要素)
元素: 数组中的数据
下标: 元素的位置
长度: 元素的数量
数组语法
1.数组声明: let 数组名 = [元素1,元素2,元素3,.......]
2.数组取值 数组名[下标]
3.数组长度 数组名.length
数组基本使用
let array = ['小明', '小刚', '小花', '小美', '小白']
// 输出数组
console.log(array)
数组的增删改查
数组的查询与修改
1.声明数组 let 数组名 = [元素1,元素2,元素3,....]
2.数组取值(查) 数组名[下标]
3.数组赋值(改) 数组名[下标] = 值
let arr = [20, 30, 40, 50, 60, 70]
// 赋值
arr[9] = 100
arr[1] = 200
// 给下标为20处赋值数组
arr[20] = 190
console.log(arr[5]);
console.log(arr);
当数组只有6个元素(也就是下标为0-5),而在下标为20处赋值一个元素,那么中间的下标对应的元素均为undefined
控制台效果
数组的增加与删除
数组名.push(元素) : 一个或多个元素,添加到末尾
数组名.unshift(元素) : 一个或多个元素,添加到头部
数组名.pop() : 删除最后一个元素
数组名.shift() : 删除第一个元素
数组名.splice(起始下标,删除个数) : 删除数组中指定元素
let arr = [10, 20, 30, 510, 50, 60, 70, 80, 90]
arr.push(0)
console.log(arr);
arr.unshift(30)
console.log(arr);
arr.pop()
console.log(arr);
arr.shift()
console.log(arr);
arr.splice(1, 5)
console.log(arr);
数组的遍历
数组遍历: 依次读取数组每一个元素值
固定格式的for循环:
let arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]
for (let i = 0; i < arr.length; i++) {
console.log(arr);
}
数组的应用
数组求和
(1)声明一个变量存储结果
(2)遍历数组中每一个元素
(3)累加
let arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]
let sum = 0
for (let i = 0; i < arr.length; i++) {
sum += arr[i]
}
console.log(sum);
求数组中的最大值和最小值
求数组最大值(最小值)
1.声明变量默认为第一个元素
2.遍历数组
3.依次比较大小,然后赋值
let arr = [20, 55, 60, 10, 90]
// 使第一个数暂时为最大的数
let max = -Infinity
for (let i = 0; i < arr.length; i++) {
max > arr[i] ? max : max = arr[i]
}
console.log(max);
//求最小值
// 是第一个数暂时为最小值
let min = Infinity
for (let i = 0; i < arr.length; i++) {
min < arr[i] ? min : min = arr[i]
}
console.log(min);
筛选数组
将数组 [2, 0, 6, 1, 77, 0, 52, 0, 25, 7] 中大于等于 10 的元素选出来,放入新数组
1.找出指定范围符合条件的数
2.把符合条件的数放入新数组中(新增元素)
let arr = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7]
let arr1 = []
for (let i = 0; i < arr.length; i++) {
if (arr[i] >= 10) {
arr1.push(arr[i])
}
}
console.log(arr1);