这是上一篇文章的链接 juejin.cn/post/720992…
接下来学习数组,主要是学习以下内容
- 数组是什么
- 数组的基本使用
- 操作数组
- 数组案例
1.数组
- 数组:(Array)是一种可以按顺序保存数据的数据类型 为什么要数组?
思考:如果我们想保存一个班里所有同学的姓名怎么办?
场景:如果有多个数据可以用数组保存起来,然后放到一个变量中,管理非常方便
2.数组的基本使用
- 声明语法
let 数组名 = [数据1,数据2,...,数据n]
let arr = new Array(数据1,数据2,...,数据n)
注意: 数组是按顺序保存,所以每个数据都有自己的编号; 计算机的编号从0开始; 在数组中,数据的编号也叫索引或下标。
例题来咯:
//1. 需求:求数组[2,6,7,4]里面的和以及平均值
let arr = [2,6,7,4]
let sum = 0
let avg = 0
for(let i = 0; i< arr.length; i++){
document.write(arr[i])
// 求和
sum+=arr[i]
// 求平均值
avg = sum / arr[i]
}
document.write(sum)
document.write(avg)
// 2.需求:求数组[2,6,1,177,52,25,7]中的最大值
let arr = [2,6,1,177,52,25,7]
let max = arr[0]
// 遍历这个数组,把里面每个数组元素和max相比较
for(let i = 0;i< arr.length;i++){
// 如果这个数组元素大于max,就把这个数组元素存到max里面
if(max<arr[i]){
max = arr[i]
}
}
document.write(max)
// 3.需求:求数组[2,6,1,177,52,25,7]中的最小值
let arr = [2,6,1,177,52,25,7]
let min = arr[0]
// 遍历这个数组,把里面每个数组元素和min相比较
for(let i = 0;i< arr.length;i++){
// 如果这个数组元素小于min,就把这个数组元素存到min里面
if(min>arr[i]){
min = arr[i]
}
}
document.write(min)
3.操作数组
//修改数组
let arr = []
console.log(arr)
// console.log(arr[0]) //undefined
arr[0] = 1
arr[1] = 5
console.log(arr)
let arr = ['pink','red','orange']
// 修改
arr[0] = 'hotpink'
console.log(arr)
// 给所有数组元素后面加个老师 修改
for(let i = 0;i <arr.length;i++){
arr[i] = arr[i] +'老师'
}
console.log(arr)
// 新增数组
// 1.push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。
let arr = ['pink','hotpink']
arr.push('deepgreen','green')
console.log(arr)
// 控制台打印对象 [
// "pink",
// "hotpink",
// "deepgreen",
// "green",
// "deepgreen",
// "green"
// ]
console.log( arr.push('deepgreen','green'))//6 注意:控制台输出的是数组的长度
// 2.unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度。
arr.unshift('black','white')
console.log(arr)
// 输出[
// "black",
// "white",
// "pink",
// "hotpink"
// ]
// 筛选数组
// 需求:将数组[2,0,6,1,77,0,52,0,25,7]中大于等于10的元素选出来,放入新数组
let arr = [2,0,6,1,77,0,52,0,25,7]
// 1.声明一个新的数组用于存放新数据newArr
let newArr = []
// 2.遍历旧数组
for(let i = 0; i< arr.length;i++){
if(arr[i] >= 10){
// 3.满足条件 依次追加给新数组newArr
newArr.push(arr[i])
}
}
// 4.输出新数组
console.log(newArr)//[77,52, 25]
// 数组去0案例
// 需求:将数组 [2,0,6,1,77,0,52,0,25,7]中的0去掉后,形成一个不包含0的新数组
let arr = [2,0,6,1,77,0,52,0,25,7]
// 1.声明一个新数组,用于存放新数据newArr1
let newArr1 = []
// 2.遍历旧数组
for(let i = 0;i< arr.length;i++){
if(arr[i] !== 0){
// 3.满足条件 依次追加给新数组newArr1
newArr1.push(arr[i])
}
}
// 4.输出新数组
console.log(newArr1)
// 删除数组
//1. pop() 方法从数组中删除最后一个元素,并返回该元素的值。此方法会更改数组的长度。
let arr = [2,0,6,1,77,0,52,0,25,7]
arr.pop()
console.log(arr) //7
//2.shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
arr.shift()
console.log(arr)
//3.splice() 方法删除指定元素
// arr.splice(起始位置,删除几个元素)
arr.splice(0,2) //从索引号0的位置开始删除,只删除2个
console.log(arr) //[6,1,77,0,52,0,25,7]
ok,数组的基本内容学习完成,接下来做练习题目啦,加油加油加油!