数组的常见方法

 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方法的结果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JS数组常用方法有很多,以下是其中的一些常用方法: 1. Array.push():向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。 2. Array.pop():删除数组的最后一个元素,并返回删除的元素。原数组改变。 3. Array.shift():删除数组的第一个元素,并返回删除的元素。原数组改变。 4. Array.unshift():向数组的开头添加一个或多个元素,并返回新的数组长度。原数组改变。 5. Array.reverse():反转数组的顺序。原数组改变。 6. Array.sort():对数组进行排序。原数组改变。 7. Array.splice():从数组中删除元素,并可以在指定位置插入新的元素。原数组改变。 8. Array.concat():合并两个或多个数组,生成一个新的数组。原数组不变。 9. Array.join():将数组的所有元素连接成一个字符串。原数组不变。 10. Array.indexOf():返回指定元素在数组中的索引,如果不存在则返回-1。 11. Array.slice():从指定位置截取数组的片段并返回新的数组。原数组不变。 12. Array.forEach():对数组的每个元素执行指定的操作。 13. Array.map():对数组的每个元素执行指定的操作,并返回一个新的数组。 14. Array.filter():根据指定的条件过滤数组的元素,并返回一个新的数组。 15. Array.every():检测数组的所有元素是否都满足指定的条件。 16. Array.some():检测数组的是否存在满足指定条件的元素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值