创建数组对象
var array = new Array();
var array = [ ];
添加内容:
array.push(value,value) --在末尾添加元素,返回添加的元素
array.unshift(value,value) --在开头添加元素 ,返回添加的元素
array.splice(start,0,value,value) --在start下标处添加value
删除内容:
array.pop()--从开头删除第一个元素,返回删除的元素
array.shift()--从末尾删除最后一个元素,返回删除的元素
array.splice(start,number)--从start处删除number个元素
截取内容:
array.slice(start,end)--从strat下标处开始截取到end下标前,不包含end下标前的元素。返回截取的数组
连接:
array.join("")--默认用逗号连接,返回字符串,数组本身不被影响
array.concat(value,value)--将value连接到array之后,返回新的数组,数组本身不被影 响
排序:
array.sort(function(a,b){
return a-b; --升序排列
return b-a; --降序排序
return Math.random()-0.5; 随机排列
})
array.reverse()--逆排序
转换成字符:
array.toString()--转换成字符串
[,,,].length--在ES5之前是4;在ES6之后是3
遍历方法:
array.forEach(function(curr,index,arr){
// do something
})
array.map(function(curr,index,arr){
//return 对curr进行运算
}) --返回一个新的数组,新数组里的每个元素都是回调函数的结果。
array.every(function(curr,index,arr){
//判断
//return true;
//return false;
//如果有false就直接返回false;
})
array.some(function(curr,index,arr){
//判断
//return true;
//return false;
//如果有ture就直接返回ture;
})
array.filter(function(curr, index, arr){
//测试
//返回一个新数组,数组内是通过测试的所有元素;
})
array.reduce(function(sum,curr,index,arr){
// return sum和curr的运算,会做累计运算.从左到右。
},init)
array.reduce(function(sum,curr,index,arr){
// return sum和curr的运算,会做累计运算,从右到左。
},init)
array.indexOf(elem,fromIndex)
--返回elem在fromIndex开始后第一次出现的位置,返回index;
array.lastIndexOf(elem,fromIndex)
--返回elem在fromIndex开始后最后一次出现的位置,返回index;
新增
array.isArray()--如果是数组则返回ture,不是返回false;
array.from()--ES6中,从一个类似数组或可迭代对象中创建一个新的数组实例
网友评论