一、专门用来操作数组的方法
1. push() 方法
作用: 向数组的后面追加数据
语法: 数组.push(你要追加的数据1, 你要追加的数据2, ...)
返回值: 追加完毕数据以后, 数组的长度
2. pop() 方法
作用: 删除数组的最后一个数据
语法: 数组.pop()
返回值: 被删除的那个数据
3. unshift() 方法
作用: 向数组的最前面添加数据
语法: 数组.unshift(你要添加的数据1, 你要添加的数据2, ...)
返回值: 添加完毕数据以后, 数组的长度
4. shift() 方法
作用: 删除数组的最前面一个数据
语法: 数组.shift()
返回值: 被删除的那个数据
5. reverse() 方法
作用: 是反转数组
语法: 数组.reverse()
返回值: 反转后的数组
6. sort() 方法
作用: 给数组进行排序
语法:
1. 数组.sort() -> 按照一位一位来看进行排序的
2. 数组.sort(function (a, b) { return a - b }) -> 按照从小到大升序排列
数组.sort(function (a, b) { return b - a }) -> 按照从大到小降序排列
返回值: 排序好的数组
7. splice() 方法
作用:
1. 截取数组
2. 截取数组以后, 在截取位置替换新的内容
语法:
1. 数组.splice(从哪个索引开始, 截取多少个)
2. 数组.splice(从那个索引开始, 截取多少个数据, 你要填充的数据1, 你要填充的数据2, ...)
从哪个索引开始截取, 从哪个索引开填充
返回值: 被截取出来的内容(返回值一定是一个数组)
不管你截取多少个数据, 返回的数组里面就有多少个被截取出来的数据
如果你一个都不删除, 返回的就是一个空数组
8. slice() 方法
作用: 在不改变(影响)原始数组的基础上, 从数组里面提取出一段内容
语法:
1. 数组.slice(从哪一个索引开始, 到哪一个索引结束) - 包前不包后
2. 数组.slice(从哪一个索引开始, 负整数) - 包前不包后
负整数 等价于 (数组的length + 负整数)
返回值: 你提取出来的数据(一定是一个数组)
如果你有提取数据, 那么数组里面就是你提取的数据
如果你没有提取数据, 那么数组里面就是空数组
9. concat() 方法
作用: 解释把多个数组连接在一起, 变成一个新的数组, 不影响原始数组
语法: 数组.concat(你要连接的数据或者数组1, 你要连接的数据或者数组2, ...)
返回值: 把所有的参数都连接到第一个数组身上, 返回一个连接好的新数组
10. join() 方法
作用: 是把数组里面的每一个数据组合起来, 变成一个字符串
语法: 数组.join('你要连接每一个数据的连接内容')
参数: 如果你不传递参数, 默认使用 逗号(,) 进行连接
返回值: 一定是一个字符串
就是用你提供的连接内容来连起来以后的字符串
二、ES5 的数组常用方法(掌握)
1. indexOf() 方法
作用: 查找数组中有没有某一个数据(按照索引正序查找 0 1 2 3 ...)
语法:
数组.indexOf(要查找的数据)
数组.idnexOf(要查找的数据, 从哪一个索引开始)
第二个参数不写默认是 0
返回值: 是一个数字
如果有你要查找的数据, 那么返回的是第一个找到的数据的索引
如果没有你要查找的数据, 那么返回的是 -1
2. lastIndexOf() 方法
作用: 查找数组中有没有某一个数据(按照索引倒叙查找 9 8 7 6 ...)
语法:
数组.lastIndexOf(你要查找的数据)
数组.lastIndexOf(你要查找的数据, 从哪一个索引开始)
返回值: 是一个数字
如果找到你要查找的数据了, 那么就返回第一个找到的数据的索引
如果没有找到你要查找的数据, 那么就返回 -1
3. forEach() 方法
作用: 就是用来循环遍历数组的, 等价于 for 循环遍历数组的地位
语法:
数组.forEach(function (item, index, arr) {})
返回值: 没有
4. map() 方法
作用: 映射一个数组, 把原始数组里面的每一个数据映射倒新数组里面返回
语法:
数组.map(function (item, index, arr) {})
返回值: 就是一个新的数组
里面的每一项始从原始数组中映射过来的
5. filter() 方法
作用: 把原始数组里面满足条件的数据过滤出来, 放在一个新数组里面
语法:
数组.filter(function (item, index, arr) {})
返回值: 就是一个新的数组
里面的每一项都是从原先数组中过滤出来的
6. every() 方法
作用: 就是判断数组里面是不是 **每一个** 都是符合条件的
语法:
数组.every(function (item, index, arr) {})
返回值: 是一个布尔值
如果数组里面所有的数据都是满足条件的, 那么返回 true
只要数组里面有任意一个不满足条件, 那么返回 false
7. some() 方法
作用: 就是判断数组里面是不是 **某一个** 是符合条件的
语法:
数组.some(function (item, index, arr) {})
返回值: 是一个布尔值
如果数组里面有任何一个是满足条件的, 那么返回 true
只有数组里面所有的都不满足条件的时候, 返回 false