一、数组的概念
- 什么是数组?
开辟空间:存储一组或一系列数据的容器
2.数组元素
存放在数组的数据,且数据具有唯一的索引号;
- 数组下标
标识一个数据唯一的索引号叫做下标;
- 数组优势
集中数据管理,提高寻址速度;
- 什么时候使用数组
存储或处理大量数据时使用;
6.数组的类型 object
二、如何声明数组
1.字面量方式: [];
- 构造函数方式: new Array();
其他情况(一个参数为其他类型或多个参数)表示元素;
如果只有一个参数为正整数时,表示数组长度;
如果有一个参数为负数或小数时,报错;
三、 如何给数组赋值
1.初始化 var arr =[]; 2.先声明,后赋值 var list = [];
四、数组的属性 length:长度;
五、数组的方法
(增、删、改、截、拼、复、排、转)
- 增
前增 unshift(元素,元素...);
作用:在数组前面增加元素;
返回值: 新增后数组的长度;
是否影响原数组:是;
后增 push(元素,元素);
作用: 在数组的后面增加元素;
返回值: 新增后数组的长度;
影响原数组;
- 前删 shift() 一次删除一个元素;
作用:删除数组首部元素
返回值: 被删除的元素;
是否影响原数组:是;
后删pop()
作用:删除数组尾部的元素;
返回值:被删除的元素;
是否影响原数组:是;
改 splice(start,delLength,newEle,newEle,...)
作用:可以在数组的任意位置,删,增,改的操作;
返回值:被删除的元素数组;
是否影响原数组: 是;
截 slice(start,end)
start:从哪里开始
end:到指定下标位置(不包含end所在位置)
返回值: 被截取到的数组;
是否影响原数组:否;
拼 concat(元素,元素)
作用:将元素拼接到指定数组的末尾(如果元素是一个数组,则去掉最外层的[],将里面的元素拼接在原数组后面)
返回值:拼接后的新数组;
是否影响原数组:否;
排 reverse()*
作用:将数组元素逆序存放倒排
返回值:逆序后的数组
是否影响原数组:是;
sort()
作用:将数组中元素默认按照字符串的方式从小到大排序;
返回值:排序后的数组;
是否影响原数组:是;
转 toString()
作用:1. 用于数字,可将数字转为指定进制的字符串,以逗号隔开; 2. 用于数组,可将数组转为字符串;
返回值:返回转后的字符串
不影响原数组
join("连接符")
作用:转为以指定连接符连接成的字符串;
返回值:返回转后的字符串;
影响原数组:否;
六、数组的分类
整数数组、字符串数组、对象数组、多维数组;
七、 for in :循环-只能遍历对象 是找对象中的key
八、冒泡排序:相邻的两个数进行比较,符合条件,交换位置
九、选择排序
十、值传递与引用传递(栈、堆)
值传递:传递的是一个值,那么所有的基本数据类型的数据都属于值传递;
引用传递:传递的是一个引用地址,那复合数据类型的数据都属于应用传递;
十一、 json:是一个跨平台、跨语言的数据格式
[]:如果有字符串,必须是双引号;
{}:key必须双引号,value如果是字符串,必须双引号;
注:undefined/NaN/infinity/function在json中不允许存在!!!
如果是一个独立的json文件,那么在文件中只能有一个json数据;
接下来进入ES5=>