一、数组
1、定义:内存中一块连续的存储单元,这些存储单元具有共同的名称、不同的索引(下标)
2、声明:
(1)、数组字面量[ ],var arr = [ ] 空数组
var a = [5] 声明一个包含1个元素的数组
(2)、使用Array对象声明数组,var arr = new Array() 空数组
var a = new Array(5) 声明一个具有5个单元的数组,数组元素为空
3、数组的属性:
length 表示数组元素的个数
索引(下标):从0开始到数组的单元个数减1
数组元素的访问:数组名[索引]
4、数组的遍历
(1)使用for循环遍历
for(let i=0;i<arr.length;i++){
console.log(arr[ i ])
}
(2)使用for...in循环:
for(index in 数组名){
循环体语句
}
index:表示的是数组元素的索引
(3)使用for...of循环:
for( value of 数组名){
循环体语句
}
value:表示数组元素
(4)forEach循环遍历:
数组名.forEach(function(value,index){
函数体语句
})
(5)使用map函数遍历数组:实际是对数组的过滤。返回一个新的数组,原数组不变
let 新数组名 = 原数组名.map(function(item){ //item表示数组元素
函数体语句
})
5、数组的排序
(1)、冒泡排序:数据两两比较,如果发现存在大小关系,就进行交换
var arr = [87, 11, 8, 56, 38, 22, 65]
console.log(`排序前的数组:${arr}`)
for (let i = 0; i < arr.length; i++) {
for (j = i + 1; j < arr.length; j++) {
//从小到大
if (arr[i] > arr[j]) {
let temp = arr[i]
arr[i] = arr[j];
arr[j] = temp;
}
}
}
console.log(`排序后的数组:${arr}`)
(2)、选择法排序