目录
数组
是数据的集合,每个数据称作元素,使用数组便于操作数据
1.数组字面量
[元素1,元素2...]
2.访问数组元素
数组[下标]
3.数组的长度
数组.length; //获取数组元素的个数
数组[数组.length] = 值; //数组的末尾添加元素
4.内置构造函数
new Array();
new Array(3); //初始化长度比为3
5.数组的分类
索引数组:以0及以上的整数作为下标
关联数组:以字符串作为下标,需要单独添加每个元素
!!!数组代表一条数据,有多个属性;数组代表一组数组
6.遍历数组元素
依次访问数组中的每个元素
// for-in
for(var k in 数组){
k 下标
数组[k] 下标对应的元素
}
// 循环 --------- 推 -- 荐 ------------
for(var i=0;i<数组.length;i++){
i 下标
数组[i] 下标对应的元素
}
7.数组API
API:JS中预定义的函数和方法
slice(start,end) | 从已有的数组中返回选定的元素。 |
toString() | 将数组转为字符串 |
join() | 将数组转为字符串,可以指定分隔的符号 |
concat() | 拼接多个数组,返回一个大数组 |
reverse() | 翻转数组元素 |
sort() | 对数组元素进行排序,默认是按照 Unicode 码从小到大排序 |
slice(start,end) | 截取数组中的元素,start开始的下标,end结束的下标,如果end为空截取到最后,如果是负数表示倒数,返回截取到的元素,格式为数组 |
splice(start, count, v1,v2...) | 删除数组中的元素,start开始的下标,count删除的数量,如果count为空删除到最后,如果下标为负数表示倒数,v1,v2表示删除后补充的元素,返回删除的元素,原数组会发生变化 |
push() | 往数组的末尾添加一个或者多个元素,返回数组的长度,原数组会发生变化 |
pop() | 删除数组末尾的一个元素,返回删除的元素,原数组会发生变化 |
unshift() | 往数组的开头添加一个或者多个元素,返回数组的长度,原数组会发生变化 |
shift() | 删除数组开头的一个元素,返回删除的元素,原数组会发生变化 |
indexOf() | 检测数组中是否含有某个元素,返回元素的下标,如果找不到返回-1 |
8.二维数组
用于对数据进行二次分类,数组的元素还是数组
[ [ ], [ ], [ ] ]
//遍历数组,翻转
var arr=['a','b','c','d'];
var arr2=[];
for(var i=0;i<arr.length;i++){
//console.log(arr.length-i-1);
arr2[i]=arr[arr.length-i-1];
}
console.log(arr2);
//从小到大 冒泡
var a=[5,3,7,2,9];
for(var i=0;i<a.length-1;i++){
//i a.length
//0 5 4
//1 5 3
//2 5 2
//3 5 1
//内层循环:控制每一轮比较的次数
for(var j=0;j<a.length-i-1;j++){
if(a[j]>a[j+1]){
var c=a[j];
a[j]=a[j+1];
a[j+1]=c;
}
}
}
console.log(a);