数组的简单操作
方法名 | 描述 | 返回值 | 例 |
---|---|---|---|
push | 在数组末尾添加指定元素 | length | push(val) |
unshift | 在数组开头添加指定元素 | length | unshift(val) |
shift | 删除数组第一个元素 | 被删除的元素 | shift() |
pop | 删除数组最后一个元素 | 被删除的元素 | pop() |
concat | 链接两个数组 | Array | arr1.concat(arr2) |
splice | 从第index位开始删除n项,并添加指定元素 | 被删除的元素 | splice(index, n, va1, val2 ...) |
slice | 截取两个下标之间元素 | Array | slice( index1, index2 ) |
join | 以str为分隔符把数组转换为字符串 | String | arr.join(',') |
reverse | 反转数组 | Array | arr.revers() |
sort | 排序 | Array | arr.sort() |
ES5 新增方法
-
支持
Opera 11+
Firefox 3.6+
Safari 5+
Chrome 8+
Internet Explorer 9+
方法 | 参数 | 描述 | 返回值 | 用例 |
---|---|---|---|---|
indexOf | val: 要查找的值 index: 从第几位开始查 |
正序查找指定的值返回值的下标,没有找到返回-1 | index | -1 | arr.indexOf(val, index) |
lastIndexOf | val: 要查找的值 index: 从第几位开始查 |
倒序查找指定的值返回值的下标,没有找到返回-1 | index | -1 | arr.indexOf(val, index) |
forEach | function: val: 数组中的值 index: 值的下标 arr: 数组自身 |
循环一个数组 | null | arr.forEach((val, index, arr)=> {} ) |
map | function: item: 数组的值 | 映射, 对数组的每一项执行指定的函数 | Array | arr.map( (item)=> {} ) |
filter | function: item: 数组的值 index |
对数组的每一项执行指定的函数,返回满足条件的数组 | Array | arr.filter( (item, index)=> { return item>1 } ) |
every | function: item: 数组的值 | 数组中每一项执行回调, 所有回调返回true则返回true | Boolean | arr.every( (item)=>{ item > 1 } ) |
every | function: item: 数组的值 | 数组中每一项执行回调, 回调只要有一个返回true则返回true | Boolean | arr.some( ( item )=> { return item>1 } ) |
reduce() | function: prev: 上一个值(上一次回调返回值) cur: 当前值 index: 当前下标 array: 当前数组 |
迭代数组中的每一项 | 最后回调返回的值 | arr.reduce( ( prev, cur, index, arr )=> {} ) |
reduce() | function: prev: 上一个值(上一次回调返回值) cur: 当前值 index: 当前下标 array: 当前数组 |
倒序迭代数组中的每一项 | 最后回调返回的值 | arr.reduce( ( prev, cur, index, arr )=> {} ) |