数组(Array)
数组就是一组数据的集合 存储在单个变量下的优雅方式
创建数组
- 利用new创建数组
- var arr = new Array(); //创建了一个空的数组 - 利用数组字面量创建数组(常用 )
- var arr = [ ];
- 数组里面的数据一定要用逗号分隔
- 数组里面的数据,我们成为数组元素
- 数组的字面量是方括号[ ]
- 声明数组并赋值称为数组的初始化
- 这种字面量方式也是我们以后最多使用的方式
数组元素的类型
数组中可以存放任意类型的数据,如字符串,数字,布尔值等。
数组的获取
索引(下标)
用来访问数组元素的序号(数组下标从0开始)
数组可以用索引来访问、设置、修改对应的数组元素,我们可以通过‘数组名[索引]‘的形式来获取数组中的元素,访问就是获取、得到的意思。
遍历数组
问:数组找那个每一项我们怎么取出来?
答:可以通过数组[索引号]的方式一项项取出来
再问:怎么把数组里面的元素全部取出来?
规律:从代码中可以发现,每取出一个元素时,代码是重复的,有所不一样的是索引值在递增,那么答案就是用循环去实现
案例:
var arr = ['red','greem','blue','pink'];
for (var i = 0;i<3;i++){
console.log(arr[i]);
}
可以分别获取到以上四个颜色
注意事项:
1.因为我们的数组索引号从0开始,所以i必须从0开始 i<3.
2.输出的时候 arr[i] i 计数器当索引号来用
案例2
var arr = ['关羽','张飞','马超','赵云','黄忠','刘备','姜维']
for(i=0;i<arr.length;i++){
console.log(arr[i]);
}
通过数组长度判断同样等同于数字,并且数组长度更灵活更适合各种场景,是工作常用的一种方式。
数组名.length
随堂提问:
1.什么是遍历?
2.我们通过什么来遍历数组里面的元素?
3.for里面的 i 是什么?当什么使用?for里面的数组元素怎么写?
i 是计数器 当索引号使用, arr[ i ]是数组元素 第 i 个数组元素
4.怎么获取数组的长度?
数组名.length可以帮我们获取长度
5.数组索引号和数组长度有什么关系?
索引号从0开始,数组长度是元素个数
数组转换为字符串
var arr = ['red', 'green', 'blue', 'pink']
var str = '';
var sep = '|';
for (var i = 0; i < arr.length; i++) {
str += arr[i] + sep;
}
console.log(str);
red|green|blue|pink|
筛选数组方法
var arr = [2,0,6,1,77,0,52,0,25,7]
var arr2 = [];
for (var i = 0; i < arr.length; i++) {
if(arr[i] > 10){
arr2[arr2.length] = arr[i]
}
}
consolog(arr2) [77,52,25];
数组新增元素
1.通过修改length长度来实现数组扩容的目的
var arr = ['red','green','blue'];
console.log(arr.length);
arr.length = 5;
console.log(arr);
2.修改索引号
var arr = ['red','green','blue'];
arr[3] = 'pink';
console.log(arr[3]);// 'pink'
如果索引号没有被占用,则会新增,如果索引号被占用,则会替换掉原来的数组元素。
注意!不要直接给数组名赋值,否则以前的元素都没了
冒泡排序
是一种算法,把一系列的数据按照一定的新婚徐进行排列显示(从小到大或者从大到小)