区分slice、splice、split、join方法

关于字符串和数组的方法,我们经常会用到,下面就详细的区分下slice、splice、split、join方法,加深下记忆并做个笔记。

slice (数组)

  • 定义和用法

    slice()方法提取部分的数组元素,返回包含提取元素的新数组,不会改变原数组。

  • 语法

    arrayObject.slice(start,end)

    参数
    start(必选): 指定提取部分的开始下标,可为负数(负数时从数组的尾部开始计算,如:-1为数组的最后一项,-2 指倒数第二个元素,以此类推。)

    end(可选): 指定提取部分的结束下标(截取部分不包含end下标的元素,截止到下标为(end-1)的元素),没有end时,默认截取数组包含从start到数组结束的所有元素,也可为负数(负数时从数组的尾部开始计算,如:-1为数组的最后一项,-2 指倒数第二个元素,以此类推。)

    警告:当start与end间,无任何元素时,返回 [] 空数组。

  • 例子

    // 例子
    var a = [10, 20, 30, 40, 50];
    a.slice(1); // [20, 30, 40, 50]
    a.slice(-3); // [30, 40, 50]
    a.slice(-7); // [10, 20, 30, 40, 50]
    a.slice(5); // []
    a.slice(1, 4); // [20, 30, 40]
    a.slice(1, -2); // [20, 30]
    a.slice(1, 7); // [20, 30, 40, 50]
    a.slice(1, -7); // []
    

slice (字符串)

  • 定义和用法

    slice()方法提取部分的字符串, 返回一个包含提取字符的新字符串,不会改变原字符串。

  • 语法

    stringObject.slice(start, end)

    参数
    start (必选),end (可选),与数组相同, 无任何字符时,返回空字符串。

  • 例子

    // 例子
    var str = 'how are you ?';
    str.slice(1,  -3);  // 'ow are yo'

splice (数组)

  • 定义和用法

    splice()方法从数组中删除一个或多个元素,在删除元素位置添加一个或多个元素,返回一个包含所删除元素的新数组。注释:该方法会改变原数组。

  • 语法

    arrayObject.splice(start, deleteNumber, item1,… )

    参数
    start(必选):删除元素的开始位置,可为负数,负数从数组的尾部开始计算。

    deleteNumber(必选):删除元素的个数(number), 为0时,不删除任何元素。

    item1, …., itemX (可选):添加的新元素,没有该项时,不会添加任何元素。

  • 例子

    // 例子
    var a = [10, 20, 30, 40, 50];
    a.splice(1, 2, 'hello', [100, 200]); // 返回 [20, 30]
    console.log(a); // [10, 'hello', [100, 200], 40, 50]

split (字符串)

  • 定义和用法

    split()方法在指定的位置,将字符串分割成字符串数组, 返回字符串数组, 不会改变原字符串。

  • 语法

    stringObject.split(separator, maxLength)

    参数
    separator (必选) :分割字符串的指定位置(字符串或正则表达式),为(”)空字符时,字符串的每个字符都将被分割。

    maxLength(可选) : 返回字符串数组的最大长度(number), 需返回数组的一部分使用此项。没有时,返回整个字符串分割的数组,不考虑长度。

  • 例子

    // 例子
    var str = 'how are you ?';
    str.split(' '); // ['how', 'are', 'you', '?']
    str.split('o'); // ['h', 'w are y', 'u ?']
    str.split('', 3); // ['h', 'o', 'w']

join (数组)

  • 定义和用法

    join()方法将数组中的所有元素以特定分割符分割,放入到一个字符串中。返回一个字符串,不会改变原数组。

  • 语法

    arrayObject.join(separator)

    参数
    separator (可选) : 指定的分割符,不设置该项,默认以逗号分割。

  • 例子

    // 例子
    var arr = [1, 2, 3, 4, 5, 'AA'];
    arr.join(); // '1,2,3,4,5,AA'
    arr.join('/'); // '1/2/3/4/5/AA'

猜你喜欢

转载自blog.csdn.net/wangcuiling_123/article/details/82744517