• js中slice(),splice(),split(),substring(),substr()的使用方法和区别


    1.slice();

    Array和String对象都有

    在Array中  slice(i,[j]) 

    i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素
    j为结束的索引值,缺省时则获取从i到末尾的所有元素

    参数返回:
    返回索引值从i到j的数组,原数组不改变

    在String中 slice(i,[j])

    参数说明:
    i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个字符
    j为结束的索引值,缺省时则获取从i到末尾的所有字符

     

    2.splice()

    存在Array中     方法向/从数组中添加/删除项目,然后返回被删除的项目。 该方法会改变原始数组

    splice(index,howmany,item1,itemx )

    index : 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。

    howmany: 必需。要删除的项目数量。如果设置为 0,则不会删除项目。

    item1...itemX : 可选。向数组添加的新项目。

    返回值  Array  包含被删除项目的新数组,如果有的话。

    3.split()

    在String中 split(separator,howmany)

    separator:必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。

    howmany: 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

    返回值

    一个字符串数组。该数组是通过在separator指定的边界处将字符串StringObject分割成子串创建的。返回的数组的字符串不包含separator自身

    但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)

    与jion()函数相反效果

    4.substring()

    在String中  substring(start,stop)

    start:表示子字符串的开始位置,

    stop:表示结束结果。

    注意:第二个参数应该大于第一个参数。如果出现第一个参数大于第二个参数的情况,substring方法会自动更换两个参数的位置。 

    5.substr()

    在String中,substr(start,length);

    start:子字符串的开始位置,

    length:子字符串的长度。

             不知道大家对slice,splice,splite是肿么样的感觉,反正我刚接触到这三个函数的时候整个人都懵了,因为一个个长的跟孪生兄弟似的,每次用的时候都会混,于是决定记下来,也给大家当个参考吧。

    1. slice  :

        定义:接收一个或两个参数,它可以创建一个由当前数组中的一项或多项组成的新数组,注意是新数组哦~ 也就是说它不会修改原来数组的值。 

         用法:slice( para1 ),会截取从para1开始的到原数组最后的部分;

            slice(para1,para2)会截取原数组的从para1开始的para2-para1个数组。 

         注意:当两个参数中存在负数时,用原数组的长度加上两个负数的参数作为相应的参数来计算。

      2.  splice  :

           定义:强大的数组操作方法

    用法 : splice( para1,para2 ) : 删除数组中任意数量的项,从para1开始的para2项。注意的是用splice删除数组中的值会直接将某几项从数组中完全删除,会导致数组length值的改变,这与delete的删除置为undefined是不一样的。

     splice( para1,para2,val1,val2… ):项数组中添加和删除项,para1表示可以添加的项数,para2表示删除的项数,后面的变量表示要添加的项的值,注 意是从para1之后开始删除和添加的。

        注意 : 参数为负数的问题,如果para1为负数,则会加上数组的长度作为para1的值,而para2为负数或0的话不会执行删除操作。

      3.split : 根据特定的字符切割字符串并且返回生成的数组。

                       例如 : str = “s-aaa-sss-eee-www”;

                                targetArr = str.slite(“-”);    //[‘s’,’aaa’,’sss’,’eee’,’www’]

      现在看看其实这三位长相相近的函数都是与数组有关的,不过各自的功能还是有很大差异的~有了它们就方便我们的数组操作了。

  • 相关阅读:
    0111. Minimum Depth of Binary Tree (E)
    0735. Asteroid Collision (M)
    0133. Clone Graph (M)
    1007. Minimum Domino Rotations For Equal Row (M)
    2018-8-10-win10-uwp-关联文件
    2018-2-13-win10-uwp-手动锁Bitlocker
    2018-2-13-win10-uwp-切换主题
    jquery开关灯
    jquery隔行变色
    jquery体验
  • 原文地址:https://www.cnblogs.com/vertko/p/5757296.html
Copyright © 2020-2023  润新知