array 可以模拟栈和队列的数据结构
pop()(删除最后一项并返回)push()(插入数据到最后一项)可以实现先进先出的栈数据结构
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
pop() unshift() 首端进尾端去 push() shift() 尾端进,首端去 正反方向模拟队列
sort() 排序是将number 里的数据都tostring 再进行字符串比较所以如果数据中是number 类型,比较就会出错
所以sort 中可以传入一个比较方法。
当前一个小于相邻的后一个数据时则返回 -1 反之返回 1 相等返回 0
function compare(v1,v2) { if(v1v2){ return -1; }else{ return 0 }}
array.push(1,5,20,15);
//sort 的方法 如果第一个小于第二个相邻的数值则会返回一个负数反之正数
array.sort(compare);
数组中的方法以是否改变原数组为前提分为两类
改变原数组:
shift:将第一个元素删除并且返回删除元素,空即为undefinedunshift:向数组开头添加元素,并返回新的长度pop:删除最后一个并返回删除的元素push:向数组末尾添加元素,并返回新的长度reverse:颠倒数组顺序sort:对数组排序 splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回
不改变原数组
concat:连接多个数组,返回新的数组join:将数组中所有元素以参数作为分隔符放入一个字符slice:slice(start,end),返回选定元素map,filter,forEach,some,every等不改变原数组 这几个方法是传入参数 例如 var array=[1,2,3] array.map(function(item,index,array){ return item>2})