1. push
- 语法: 数组.push(数据)
- 作用: 向数组中最后 追加一个数据
- 返回值: 追加数据后数组的长度
2. unshift
- 语法: 数组.unshift(数据)
- 作用: 向数组中最前 追加一个数据
- 返回值: 追加数据后数组的长度
3. pop
- 语法: 数组.pop()
- 作用: 将数组的最后一个数据 从数组删除
- 返回值: 删除的数据
4. shift
- 语法: 数组.shift()
- 作用: 将数组的第一个数据 从数组删除
- 返回值: 删除的数据
5. reverse
- 语法: 数组.reverse()
+ 作用: 翻转转数组中的数据
+ 返回值: 翻转后的数组
6. sort
- 语法1: 数组.sort()
+ 作用: 将数组中的数据 按位 进行比较 排序
+ 返回值: 排序后的数组
- 语法2: 数组.sort(function(a,b){return a-b})
+ 作用: 将数组中的数据 将升序排序,如果传入函数的返回值b-a则是降序排序
+ 返回值: 排序后的数组
7. splice
- 语法1: 数组.splice(开始索引,删除的个数)
+ 作用: 删除数组中的数据, 从开始索引开始删除
- 开始索引不传 默认是不删除, 删除个数不传,默认值开始到结束位置删除
+ 返回值: 删除的数据组成 的新数组
- 语法2: 数组.splice(开始索引,删除的个数,写入的数据,...)
+ 作用: 删除数组中的数据, 从开始索引开始删除,将传入的数据从开始索引写入数组
- 写的数据可以有多个
- 如果删除的个数为0,就是向数组指定位置插入数据
+ 返回值: 删除的数据组成 的新数组
8. concat
- 语法: 数组.concat(数组1,数组2..数据,..)
+ 作用: 数组合并,将传入的数据 和原数组中的数据合并为一个新数组
- 如果传入的是数组,则会将数组中的数据 合并到新数组中
+ 返回值: 合并后的新数组
+ 不会改变原数组
9. join
- 语法: 数组.join(拼接字符)
+ 作用: 将数组中数据 通过传入的拼接字符 拼接为一个字符串
+ 如果不传参数,则默认使用 逗号 拼接
+ 返回值: 拼接完成的字符串
+ 不会改变原数组
10. slice
- 语法: 数组.slice(开始索引,结束索引)
+ 作用: 截取数组中的数据 从开始索引 到 结束索引
- 包含开始索引,不包含结束索引(包前不包后)
- 开始索引默认值为 0, 结束索引不传 length 默认截取到最后
+ 结束索引可以为负数
- 比如: -1 表示 length-1
+ -1 就是最后一个 -2就是倒数第二个
+ 返回值: 截取数据的组成的新数组(如果没有截取到数据则返回空数组)
+ 不会改变原数组
11. indexOf
- 语法1: 数组.indexOf(数据)
+ 作用: 从数组第一个数据开始往后检索,查找传入数据是否存在
- 查找到则检索结束
+ 返回值: 如果存在 则返回对应的索引,如果不存在则返回-1
- 语法2: 数组.indexOf(数据,开始索引)
+ 作用: 从传入的开始索引 作为检索起始点 往后检索,查找传入数据是否存在
- 查找到则检索结束
+ 返回值: 如果存在 则返回对应的索引,如果不存在则返回-1
12. lastIndexOf
- 语法1: 数组.lastIndexOf(数据)
+ 作用: 从数组最后一个数据开始往前检索,查找传入数据是否存在
- 查找到则检索结束
+ 返回值: 如果存在 则返回对应的索引,如果不存在则返回-1
- 语法2: 数组.lastIndexOf(数据,开始索引)
+ 作用: 从传入的开始索引 作为检索起始点 往前检索,查找传入数据是否存在
- 查找到则检索结束
+ 返回值: 如果存在 则返回对应的索引,如果不存在则返回-1
13. at方法
- 语法: 数组.at(索引)
+ 作用: 返回索引位置的数据
- 可以写入负数
+ 比如: -1表示 是索引是 length-1 也就是倒数第一个
14. includes
- 语法: 数组.includes(数据)
+ 作用: 判断传入的数据 在数组中是否存在
+ 返回值: true表示存在,false 不存在
15. flat
- 语法: 数组.flat(数字)
+ 作用: 将多维数组 拍平
- 传入多少数字就是拍平多少层,默认不传就是 拍平1层数组
- 如果传入 Infinitiy 表示拍平为一维数组
+ 返回值: 拍平后的数组
+ 不会改变原数组
16. forEach
- 语法: 数组.forEach(function(value,index,origin){})
+ 作用: 遍历数组
+ 返回值: 没有返回值
+ 执行过程:
- 数组有多少个数据,则传入的函数执行多少次
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
17. map
- 语法: 数组.map(function(value,index,origin){})
+ 作用: 映射数组
+ 返回值: map方法中传入函数的返回值 组成的新数组
- 一般在传入函数中 都会在return 后书写 映射条件
+ 注意: 映射条件的书写 依据于 需求和数组中的数据
+ 执行过程:
- 数组有多少个数据,则传入的函数执行多少次
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
+ 每次函数执行的返回值 都作为 map方法结果数组中的数据
18. filter
- 语法: 数组.filter(function(value,index,origin){})
+ 作用: 过滤数组
+ 返回值: 返回一个新数组,数组中的数据都 传入函数返回值true的原数组数据
+ 执行过程:
- 数组有多少个数据,则传入的函数执行多少次
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
+ 每次函数执行的 返回值是布尔true,则将对应的这个数组数据作为新数组的数组追加
19. find
- 语法: 数组.find(function(value,index,origin){})
+ 作用: 数组数据查找(满足条件的)
+ 返回值: 传入函数执行,第一个返回值为true 的数组数据
- 一般都在存入函数中书写 条件
+ 执行过程:
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
+ 函数执行的 返回值是布尔true,则将对应的这个数组数据作为find方法的返回值 并且传入的函数不再继续执行
20. findIndex
- 语法: 数组.findIndex(function(value,index,origin){})
+ 作用: 数组数据查找(满足条件的)
+ 返回值: 传入函数执行,第一个返回值为true 的数组数据索引
- 如果所有数据都不满足条件返回值为 -1
- 一般都在存入函数中书写 条件
+ 执行过程:
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
+ 函数执行的 返回值是布尔true,则将对应的这个数组数据索引作为findIndex方法的返回值 并且传入的函数不再继续执行
21. some
- 语法: 数组.some(function(value,index,origin){})
+ 作用: 数组数据判断方法( 判断 数组中是否有数据满足条件)
+ 返回值: 如果所有数据都不满足条件,则返回false,只要有一个满足条件返回true
- 传入函数执行结果为true 就表示数组数据满足条件了
+ 执行过程:
+ 每次函数执行则形参 value表示 数组的数据
+ 每次函数执行则形参 index表示 数组的数据对应的索引
+ 每次函数执行则形参 origin表示 调用此方法的数组本身
+ 函数执行的 返回值是布尔true,则some方法的返回值也是true,并且传入的函数不再继续执行; 如果传入函数全部执行完毕 返回值全都是false,则some方法的结果是false
22. every
- 语法: 数组.every(function(value,index,origin){})
+ 作用: 数组数据判断方法( 判断 数组数据是否都满足条件)
+ 返回值: 如果有数据都不满足条件,则返回false,只有所有数据都满足条件才 返回true
- 传入函数执行结果为true 就表示数组数据满足条件了
+ 执行过程:
- 每次函数执行则形参 value表示 数组的数据
- 每次函数执行则形参 index表示 数组的数据对应的索引
- 每次函数执行则形参 origin表示 调用此方法的数组本身
- 函数执行的 返回值是布尔false,则every方法的返回值也是false,并且传入的函数不再继续执行;
+ 如果传入函数全部执行完毕 返回值全都是true,则every方法的结果才是是true
23. reduce
- 语法1: 数组.reduce(funciton(prev,item,index,origin){})
+ 作用: 数组累计方法
+ 返回值: 传入函数最后一次执行的返回值就是 reduce方法结果
+ 执行过程:
- 传入的函数执行次数 是数组长度减1次
- 函数第一次执行
+ 形参 prev表示 数组的第一个数据
+ 形参 item表示 数组的第二个数据
+ 形参 index表示 item数组数据的索引
+ 形参 origin表示 原数组
- 函数第二次执行
+ 形参 prev表示 函数前一次执行的返回值
+ 形参 item表示 数组的第三个数据
+ 形参 index表示 item数组数据的索引
+ 形参 origin表示 原数组
- 后续每次函数执行
+ 形参 prev表示 函数前一次执行的返回值
+ 形参 item表示 数组的依次执行函数是的 数组数据
+ 形参 index表示 item数组数据的索引
+ 形参 origin表示 原数组
- 最后一次函数执行的结果就是reduce方法的结果
- 语法2: 数组.reduce(funciton(prev,item,index,origin){},初始数据)
+ 作用: 数组累计方法
+ 返回值: 传入函数最后一次执行的返回值就是 reduce方法结果
+ 执行过程:
- 传入的函数执行次数 是数组长度的次数
- 函数第一次执行
+ 形参 prev表示 reduce调用传入的 初始数据
+ 形参 item表示 数组的第一个数据
+ 形参 index表示 item数组数据的索引
+ 形参 origin表示 原数组
- 后续每次函数执行
+ 形参 prev表示 函数前一次执行的返回值
+ 形参 item表示 数组的依次执行函数是的 数组数据
+ 形参 index表示 item数组数据的索引
+ 形参 origin表示 原数组
- 最后一次函数执行的结果就是reduce方法的结果