数组
1、数组也是一个变量,分配一串连续的地址空间
数组也可以存数多个数据,并且可以hi任意数据类型
2、数组的申明
var 数组名=[];
let 数组名=[]; //空数组
let 数组名=new Array(); //申请空数组,当Array中,只有一个数字是,代表数组的长度。
①. 循环输出数组中的每个值,可以称数组的遍历。
②.数组的操作
添加 push 只能数组的末尾添加,
unshift 在数组的前面添加
删除 pop 删除数组末尾的一个元素,返回删除的这个元素的值
shift 删除数组开头的一个元素,返回删除的这个元素的值
注:删除,添加数组元素时,元素的下标会发生变化。
修改 splice: 可以实现删除,添加,修改
数组名.splice(下标,删除的长度,添加的值)
③. 数组中的长度是可以发发生变化的,
数组名 .length; //获取数组的长度
数组中的数据,称为数组元素,可以通过一下方式么获取
数组名[下标]; //下标从0开始
④.字面量创建与new关键字创建的区别
new的形式与字面量创建类似,可以将值放入其中
3、合并
返回一个型数组,不会改变原数组
数组1.concat数组2
4、截取
不会改变原数组,会将截取的元素以数组的形式返回
数组.slice(起始下标(要被截取),结束下标(不会截取))
5、数组的反转
会改变原始数组
.reverse();
6、数组的连接
join
将数组中的元素以逗号活着设置的分隔符链接成一个字符串,并返回
数组名.join(分隔符)
7、清空数组
数组名=[];
数组名.length =0;
数组名.splice(0,数组名.length);
8、length属性的巧妙应用
数组名.length= 0; //清空数组
数组名.length =100; //添加数组的长度
数组名[数组名.length]=值; //在数组末尾加一个
数组名的length=最大下标
注:在给数组赋值时,当下标超过数组现有长度,会自动给数组增加长度。
9、indexOf(es6中Array新增);
10、Math数学对象
获取随机数
Math.random();
向下取整
console.log(Math.floor());
向上取整
console.log(Math.ceil());
次方 pow()
Math.pow(底数,指数幂);
绝对值 abs()
Math.abs(-123); //123
平方根
Math.sqrt(9); //3
最大值与最小值
Math.max();
Math.min();
11、排序 sort()
数组名.sort();
//默认是字符串排序
数字大小排序,需要写一个function
sort(function(a,b)){
return a-b; //升序
}
冒泡排序,选择排序,快速排序,shell排序,归并排序...