let arr = [1,2,3,4]
1.转字符串方法
Array.prototype.toString.call() 变成字符串
arr.join() 变字符串 arr.split(‘,’) 方法用于把一个字符串分割成字符串数组。
2.堆栈方法
arr.push() 最后添加 返回增加后的长度
arr.pop() 删除最后一个 返回被删除的项目
arr.unshift() 在开头添加 返回增加后的长度
arr.shift() 删除第一个 返回被删除的项目
3.排序方法
arr.reverse() 翻转数组 改变原数组
arr.sort((a,b)=>a-b) 排序数组 改变原数组 a-b升序 b-a降序
arr.sort(()=>Math.random()-0.5) 乱序 随机排序
4.数组拼接
arr.concat(要添加的) 返回新数组 不能拼接多维数组
[...arr,3,4] es6方法
5.删改
arr.slice(star,end) 从索引star开始 不包含end截取 只传一个参数 截取后面全部 不改变原数组 返回截取到的数组
Array.prototype.slice.call(str) 类数组转真数组
arr.splice(star,要删除的个数,要插入的值) 改变原数组 只传一个参数 截取后面全部 返回截取元素组成的数组
var array = [0,1,2,3,4,5,6]
array.slice(2)的结果为:2,3,4,5,6
array.slice(2,4)的结果为:2,3
array.splice(2)的结果为:0,1
array.splice(2,1)的结果为:0,1,3,4,5,6
array.splice(2,0,8,9)的结果为:0,1,8,9,2,3,4,5,6
6.找索引
arr.indexOf(要搜索的) 从左往右找 在 就返回索引 不在 返回-1
arr.lastIndexOf(要找的) 从右往左找
es6 arr.includes 判断一个数组是否包含一个指定的值,返回布尔值。
es6 创建数组
Array()
Array.of() 单个的值 转换数组
Array.from() 就是[...arr] 类数组转数组
arr.fill() 填充方法 第一个填充的值 第二个从哪开始 第三个到哪 左闭右开[)
arr.find(n=> n>4) 返回第一个符合条件的成员
arr.findIndex(n=> n>4) 返回第一个符合条件的索引
7.数组迭代
arr.forEach((item,index,arr)=>{},obj) item数组里面元素 可以让循环中的this指向指向第二个参数obj
arr.map((item,index,arr)=>{return }) 为了返回一个和原数组有映射关系的数组
arr.filter((item,index,arr)=>{return 布尔值}) 过滤满足条件的
arr.some((item,index,arr)=>{return 布尔值}) 过滤 只要有一个就返回
arr.every((item,index,arr)=>{return 布尔值}) 全不满足才返回
array.reduce((acc,item, Index, arr)=>{}, 初始值)