数组
1.什么是数组?
就是一组数据,这组数据可以是任意类型,任意个数
数组的三种创建方式
数组的字面量表达式
1. var arr = [ ];//推荐写法
2. var arr = new Array();
3. var arr = Array()
2.创建数组方式
new Array(参数,参数,参数);只有一个数字参数时是数组的长度(new可以省略,但一般尽量写上)
var colors=Array(3);
console.log(colors.length);// 3代表数组的长度
var arr=new Array(10,20);//数组的元素,不在代表长度
var arr[1,2,3,4,5];
2.数组元素的获取(访问)
arr[0]:表示数组的第一个元素,0是下标,也叫索引
arr[1]:表示数组的第二个元素,1是下标
3.数组的长度
数组长度(数组元素的个数):arr.length
length属性,不仅是只读的,也可以设置
var colors = Array(3);
colors.length = 2;//当设置长度小于实际长度时,从数组后面截取,
// 保留前面的部分,当设置长度大于实际长度时,后面未被赋初值
colors[2] = 40;//给数组赋值
console.log(colors[0]);
注意:一旦修改,成员发生变化,扩展在缩小可能会造成数据丢失的情况
4.数组的使用
遍历数组(打印数组所有的元素)
1.普通for循环
for(var i=0;i<5;i++){
console.log(arr[i]);
}
2.for…in遍历:用于遍历数组或者对象
for(var i in arr){
console.log(arr[i]);
}
for(var i in array){
console.log(array[i]);//遍历数组元素.打印出来
}
遍历打印,打印和返回完全没有关系
会改变原来数组的方法
1. push()往数组的最后位置,添加一个成员,返回数组的新长度
2.pop()删除数组最后位置的元素,返回被删除的元素
3.shift()删除数组的第一位,返回被删除的元素
4.unshift()往数组的第一位,添加成员,返回数组的新长度
5.sort()排序,默认是升序,可以进行1`9的排序,2位以上,则跟ASCII码进行比较
在sort()里添加回调函数,函数实现a-b升序,b-a降序
6.rverse() 倒叙
7.splice()
2个参数 删除
3个参数
第二个参数0 插入
第二个参数1 替换
不会改变原来数组的方法
8. join() 返回字符串,默认,隔开
9. concat() 返回一个新的数组,合并数组,还可以进行数组的拷贝
10. slice() 截取 如果是一个参数,从开始位置到结束
第二个参数,结束位置,要多一位数[n,m)
11.indexOf() 找到了返回下标,找不到返回-1,第二个参数,默认是从0开始查找
12. lastIndexOf() 找最后一次出现的位置
数组的高阶函数
map,some,every,filter,reduce.. 参数是回调函数