1.什么是数组
数组就是一组数据的集合
其表现形式就是内存中的一段连续的内存地址
数组名称其实就是连续内存地址的首地址
2.JS 中数组的特点
a. 数组定义时无需指定数据类型
b. 数组定义时可以无需指定数组长度
c. 数组可以存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个 在JS中是可以的)
3.创建数组
1)隐式创建:let/var/const arr=[值1,值2,值3]
const arr = [] // 空数组
const arr2 = [10, 20, 30] // 数组有3个元素,元素之间用逗号
const arr3 = ['1', 2, true, [1]] // 元素类型可以不一样
2) 通过构造函数 new Array()
const arr4 = new Array() // []
const arr5 = new Array(1, 2) // [1,2]
const arr6 = new Array(5) // 只有一个数字的时候 5表示arr6内的元素个数
4. 关于数组的长度
数组对象 .length
在js中,每一个数组对象都可以调用length属性,它表示数组对象下共有几个数组元素
const arr = [89, 78, 90, 100]
consol.log('该数组长度为:'+arr.length) //该数组长度为: 4
5. 访问数组元素
数组名[下标/角标/索引] 下标 :0 1 2 ... (0~元素个数-1)
const arr = [89, 78, 90, 100]
console.log(arr[0]) //89
console.log(arr[1]) //78
console.log(arr[2]) //90
注:数组的下标 / 索引是从 0 开始的,即数组中第一个元素下标为0,第二个元素的下标为1,以此类推。
6.数组的应用
1)数组遍历
const arr=[10,23,-3,-4,0,0,22,-17,56,17]
for(let i=0;i<arr.length;i++){
console.log(arr[i])
}
2)求和、求平均值
const arr=[10,23,-3,-4,0,0,22,-17,56,17]
let sum=0
let avg
for(i=0;i<arr.length;i++){
sum+=arr[i]
}
avg=sum/arr.length
console.log(`sum=${sum},avg=${avg}`)
3)求最大值、最小值
const arr=[10,23,-3,-4,0,0,22,-17,56,17]
let max=arr[0]
let min=arr[0]
for(i=0;i<arr.length;i++){
if(arr[i]>max){
max=arr[i]
}
}
for(i=0;i<arr.length;i++){
if(arr[i]<min){
min=arr[i]
}
}
console.log('数组最大值:'+max)
console.log('数组最小值:'+min)
4)筛选出一组数据中非0的数字,并放入一个新数组
const arr=[10,23,-3,-4,0,0,22,-17,56,17]
let new_arr=[]
let j=0
for(i=0;i<arr.length;i++){
if(arr[i]!==0){
new_arr[j]=arr[i]
j++
//new_arr[new_arr.length]=arr2[i] //此为方法二,以作参考
}
}
console.log(new_arr)