数组的内置方法
1、栈方法:push()在数组末尾添加数据 ,支持多个参数 , 压栈;
pop出栈 删除数组尾部元素 不能有参数 一次删一个。
var num=[1,2,3,4,5,6];
num.push(6,7,8); //在尾部添加元素 支持多个参数添加
num.pop(); //删除尾部元素 不能有参数 一次只能删一个
console.log(num);
2、队列方法:
先进先出
push()进队 在尾部追加数据
shift()出队 删除头部元素
unshift() 在头部插入元素
var num=['hello','world','hi','xiaoming'];
num.push('luck'); //进队,在数组尾部追加数据
num.shift(); //删除头部元素,在此代码中删除'holle';
num.unshift('good'); //在头部添加元素 在此代码中添加'good';
3、数组的操作方法
concat() 合并数组
slice(start,end) 截取数组
splice():两种用法
1)、splice(index,howmany)删除指定个数的元素
2)、splice(index,howmany,item) 先删除指定个数的元素,然后再删除的位置添加新元素
var arr=[1,2,3,4];
var arr1=[9,8,7,6];
var arr2=arr.concat(arr1); //产生了一个新数组 不传参复制数组
var arr=[11,22,33,44,55,66];
arr.slice([1],[3]); //输入索引, 截取数组, [start,end)左闭右开 如果输入的是 slice(0)则复制数组。
var arr=[1,'jack',2,'good',3,'nice'];
arr.splice([1],3); //删除指定个数的元素,修改原数组 从索引为1的元素开始删除,删除3个元素
arr.splice([0],1,'holle'); //先删除指定个数的元素,然后再删除的位置添加新的元素,删除索引0的元素,将1删除, 添加了新元素'hello'
4、其他方法:indexOf(searchvalue ,fromindex): 判断指定元素在数组中(第一次)的位置,返回位置 返回为-1,indexOf() 方法对大小写敏感!
var arr=['hi','lihua','zhangsan','wangwu'];
arr.indexOf('hi');
arr.indexOf('hello'); //如果要检索的字符串值没有出现,则该方法返回 -1。
排序方法:1)sort(sortby); 规定排序顺序。必须是函数。 此方法是按照ASCII码来排序;
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
2)reverse() 倒序
3)转换方法 join(sp) 能将数组转换为字符串(通过指定字符链接起来);
var arr=['lihua','is','a','student'];
arr.join(' '); //将数组转换为字符串 通过空格链接起来