• slice,splice,substr,substring区别


     slice

    一个参数

    1. |*| 一个参数,不影响原数组
    2. |*| 正数,指从索引取到末尾,左闭右闭.
    3. |*| 负数,指倒数x个,如-3,就是倒数3个都要

     2个参数

    1. slice,2个参数,不影响原数组,返回类型都是数组
    2. 若皆为正数,那么2个参数都是索引,第二个数字要大于等于第一个,取值是左闭右开(或是将第2个参数减去第一个参数,得到个数,并以第一个参数的索引位置计为第一个)
    3. 若一正一负,第一个参数是索引,第二个参数是倒数第x"个",取值左闭右开,若负值与第一个参数的索引指向同一个值,则取得空数组(因一个数不能同时开闭)

    splice

     一个参数,删除某些值

    1. var obj=['a','ws','b','c','ws','q']
    2. var res= obj.splice(-3)
    3. console.log('======ob',res);//['c', 'ws', 'q']
    4. console.log('======',obj);//['a', 'ws', 'b']
    5. /*\splice,1个参数,破坏原数组
    6. |*|从索引的位置开始,删除之后的所有元素(包括该索引位)
    7. |*|若索引 < 0 , 则删除倒数x个元素
    8. |*|返回被删除的元素,类型为数组
    9. \*/

    2个参数 ,删除某些值

    1. var obj=['a','ws','b','c','ws','q']
    2. var res= obj.splice(3,-4)
    3. console.log('======ob',res);//['c', 'ws']
    4. console.log('======',obj);//['a','ws','b','q']
    5. /*\splice,2个参数,破坏原数组
    6. |*|splice(index,howmany) ——> 删除从index位置开始的值(包括该index位置),删除数量为howmany的值
    7. 若 howmany 小于等于 0,则不删除,相当于无任何操作,只返回一个空数组
    8. |*|若第2个参数为负数,无论是负多少,皆返回空数组
    9. \*/

    3个参数

    1. var obj=['a','ws','b','c','ws','q']
    2. var res= obj.splice(-3,2,'ha','嘎嘎')
    3. console.log('======ob',res);// ['c', 'ws']
    4. console.log('======',obj);//['a', 'ws', 'b', 'ha', '嘎嘎', 'q']
    5. /*\splice,3个参数,破坏原数组
    6. index >0
    7. (1. howmany 为 0 时 不删除只添加 —— 在index位置左侧添加item1, …, itemX的数
    8. (2. howmany > 0 删除且添加 —— 删除从index位置开始的数,howmany为删除的个数,然后添加item1, …, itemX
    9. index <0 时 最后一个数为 -1 依次倒数第二个数为-2
    10. (1. howmany 为 0 时 不删除只添加 —— 在-index位置左侧添加item1, …, itemX的数
    11. (2. howmany > 0 ,删除-index位置的数,howmany为删除的个数,然后添加item1, …, itemX的数
    12. \*/

    substr

    1个参数

    1. /*\substr,1个参数,不破坏原数组
    2. 参数为index,从包含index位置,取到最后
    3. 若为负数,如-3,则取得倒数第3,第2,第1
    4. \*/

    2个参数

    1. /*\substr,2个参数,不破坏原数组
    2. 第一个为index,第二个为howmany,从包含index位置,取howmany个
    3. index为负数,则-1代表倒数第一个,取得howmany个
    4. \*/

    substring

    一个参数,正整数

    1. 取得包含索引位一直到结尾 
    2. 不能是负数,若是负数,则取得原字符串

    2个参数

    1. substring,2个参数,皆为非负整数,不破坏原数组
    2. 2个都是索引,左闭右开
    3. 2个参数应比第1个参数至少大1,若相等,取得空字符串,若第2个参数小于第一个,那么系统会自动reverse2个参数.

  • 相关阅读:
    【vscode使用clang-format格式化代码】
    【webrtc】时间戳reordered 重新排序、环绕的判断
    基于Flume+Kafka+Hbase+Flink+FineBI的实时综合案例(三)离线分析
    软件测试学习笔记九
    计算机网络 | 网络安全 | HTTP & HTTPS | URI解析全过程
    oracle数据进程死锁查询以及解决方法
    python如何使用IP池
    c#设计模式-行为型模式 之 解释器模式
    UniApp-Vue3踩坑记录&心得体会
    二分模板代码
  • 原文地址:https://blog.csdn.net/aexwx/article/details/127070308