1、slice
可用於數組與字符串,返回一個新的數組,原數組不改變,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。
在string中 slice(start,end)、array.slice(start,end),表示對數組進行部分截取,並返回一個數組副本;參數start是截取的開始數組索引,end參數等於你要取的最后一個字符的位置值加上1。
2、splice
只能操作數組,不能對字符進行操作(需要進行分割轉換成數組格式),返回被刪除的元素組成的數組 ,會改變原始數組。
它可以用於插入、刪除或替換數組的元素。W3school例子:
arrayObject.splice(index,howmany,item1,.....,itemX)
參數至少兩個,index為必選項,表示操作數組的起始位置,負數表示從倒數開始。howmany為必選項,表示從起始位置開始要替換或刪除幾個元素。item(包括item1、item2...)為可選項目,表示要替換的新元素,有則替換沒有則表示刪除。splice() 方法可刪除從 index 處開始的零個或多個元素,並且用參數列表中聲明的一個或多個值來替換那些被刪除的元素。如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。
3、split
用於把一個字符串分割成字符串數組,可用於數組與字符串,返回一個字符串數組。
split(separator,howmany)separator是必選項。表示分割字符串的符號。howmany為可選項,表示分割后返回的結果長度。
如果把空字符串 ("") 用作 separator,那么 stringObject 中的每個字符之間都會被分割。而且String.split() 執行的操作與jion()函數操作是相反的。
4、substr
substr() 方法可在字符串中抽取從 start 下標開始的指定數目的字符。
W3school例子如:
stringObject.substr(start,length)
返回值為一個新的字符串,包含從 stringObject 的 start(包括 start 所指的字符) 處開始的 length 個字符。如果沒有指定 length,那么返回的字符串包含從 start 到 stringObject 的結尾的字符。
substr() 的參數指定的是子串的開始位置和長度,因此它可以替代 slice() 來使用。
run.innerHTML=run.innerHTML.substr(0,run.innerHTML.length-1);
run.innerHTML=run.innerHTML.slice(0,run.innerHTML.length-1);
run.innerHTML=run.innerHTML.split('').splice(0,run.innerHTML.length-1,).join('');
這三行代碼都是對同一字符串的操作,效果一樣。
總結:
substr()、split()和slice()相似,可以作用於字符串,split()和slice()不會對原數組進行改變,splice() 方法會直接對數組進行修改,不能直接操作字符串。