天天看点

js中splice()、slice()、substring() 、substr()、join()用法

记录一下。。。

1、splice()方法:用于插入、删除或替换数组的元素。

    注意:这种方法会改变原始数组

    语法:

    array.splice(index,howmany,item1,.....,itemX)

    参数:

    index   必需。规定从何处添加/删除元素。

            该参数是开始插入和(或)删除的数组元素的下标,必须是数字。

    howmany 必需。规定应该删除多少元素。必须是数字,但可以是 "0"。

            如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。

    item1, ..., itemX   可选。要添加到数组的新元素

    返回值:

    Array   如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。

    实例:

    1、移除数组的第三个元素,并在数组第三个位置添加新元素:

    var fruits = ["Banana", "Orange", "Apple", "Mango"];

    fruits.splice(2,1,"Lemon","Kiwi");  //Banana,Orange,Lemon,Kiwi,Mango

    2、从第三个位置开始删除数组后的两个元素:

    var fruits = ["Banana", "Orange", "Apple", "Mango"];

    fruits.splice(2,2);  //Banana,Orange

2、slice() 方法:从已有的数组中返回选定的元素 或者 可提取字符串的某个部分,并以新的字符串返回被提取的部分

    注意: slice() 方法不会改变原始数组。

    语法:

    array.slice(start, end)

    参数:

    start   可选。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

    end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。

        如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

    返回值:

    Array   返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

    实例:

    1、使用负值从数组中读取元素:

    var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];

    var myBest = fruits.slice(-3,-1);  //Lemon,Apple

    2、截取字符串:

    var str="www.runoob.com!";

    document.write(str.slice(4)+"<br>"); // 从第 5 个字符开始截取到末尾

    document.write(str.slice(4,10)); // 从第 5 个字符开始截取到第10个字符

3、substring() 方法:用于提取字符串中介于两个指定下标之间的字符【返回的子串包括 开始 处的字符,但不包括 结束 处的字符】

    语法:

    string.substring(from, to)

    参数:

    from    必需。一个非负的整数,规定要提取的子串的第一个字符在 string Object 中的位置。

    to  可选。一个非负的整数,比要提取的子串的最后一个字符在 string Object 中的位置多 1。

        如果省略该参数,那么返回的子串会一直到字符串的结尾。

    实例:

    var str="Hello world!";

    document.write(str.substring(3)+"<br>");  //lo world!

    document.write(str.substring(3,7));  //lo w

4、substr() 方法:可在字符串中抽取从 start 下标开始的指定数目的字符。

    语法:

    stringObject.substr(start,length)

    参数:

    start   必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。

    length  可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。

    返回值:

    一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。如果没有指定 length,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。

    实例:

    var str="Hello world!"

    document.write(str.substr(3));  //lo world!

    document.write(str.substr(3,7));  //lo worl

5、join() 方法:用于把数组中的所有元素放入一个字符串【元素是通过指定的分隔符进行分隔的】

    语法:

    arrayObject.join(separator)

    参数:

    separator   可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

    返回值:

    返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。

    实例:

    var arr = new Array(3);

    arr[0] = "George";

    arr[1] = "John";

    arr[2] = "Thomas";

    var arr2 = new Array(3);

    arr2[0] = "abc";

    arr2[1] = "def";

    arr2[2] = "ghijkl";

    document.write(arr.join());  //George,John,Thomas

    document.write(arr2.join("."));  //abc.def.ghijkl

继续阅读