一、数组 ***************
-
数组的操作
-
索引(编号,序号,从0开始)
var arr = ["hello",3,4,5,"world"];
- 数组是一个有序数据的集合
- 有序的序号,索引
- 从0开始
- 到哪结束
- 根据长度,得出,到length-1
- 数组的第一个:数组[0]
- 数组的最后一个:数组[数组.length-1]
- 增
- 增加数组的长度
- 给不存在的位置赋值
arr[arr.length] = "哈哈哈";
- 删
- 缩短数组的长度
// 原有长度是5 arr.length = 3;
- 改 ******
- 找到对应索引的数据,赋值(覆盖)
arr[要修改数据的索引] = "四";
- 查 ******
- 根据索引直接获取
arr[指定位置的索引]
-
数组的方法(对象的方法)
- 背 就完了,了解,测试
-
- https://www.jianshu.com/p/7e160067a06c
-
-
数组的小分类,不同叫法,特点:里面的数据类型一致
- 对象数组
- 都是对象
- 二维数组
- 数组里面都是数组
- 如何使用
- 逐层解析
- 对象数组
-
数组的排序
- 冒泡
for(var i=0;i<arr.length-1;i++){ for(var j=0; j<arr.length-1-i; j++){ if(arr[j] > arr[j+1]){ var ls = arr[j]; arr[j] = arr[j+1]; arr[j+1] = ls; } } }
- 选择
for(var i=0;i<arr.length-1;i++){ // 为了能不断的使用第一位和后面的作比较,在能拿到第一个数据的时候,存到一个ls变量中 // 将来使用这个ls变量作比较,就不影响真正的第一位的数据了 // 因为每一行第一个索引都在变,所以,要将这个ls变量,放在第一个循环的内部 var ls = arr[i]; // ls保存了数组中某个数据,lsIndex保存这个数据的索引 var lsIndex = i; for(var j=i+1;j<arr.length;j++){ if(ls > arr[j]){ // ls里面的数据如果大了,换成小的 // 因为在找最小的 ls = arr[j]; // 如果ls里面的数据换了,lsIndex也跟着换 lsIndex = j; } } // ls必然已经是最小的了 // 交换数组中的数据 // 先把真正的第一位拿走,否则会被覆盖 // 放到真正的最小值的位置 arr[lsIndex] = arr[i]; // 再把ls变量中,最小的值,放在第一位 arr[i] = ls; }