slice splice split 這三個真的更容易混淆,下面來作一下總結
1、針對字符串操做的有 split ,slice正則表達式
string.split( separator , howmany )
separator 必需。字符串或正則表達式,從該參數指定的地方分割 string。
howmany 可選。該參數可指定返回的數組的最大長度。數組
注:若是把空字符串 ("") 用做 separator,那麼 string中的每一個字符之間都會被分割。
注:string.split() 執行的操做與 Array.join 執行的操做是相反的。
例子:"2:3:4:5".split(":") //將返回["2", "3", "4", "5"]索引
2.slice 可從已有的數組中返回選定的元素。
string.slice(start,end)
slice方法複製string的一部分來構造一個新的字符串,end參數等於你要取的最後一個字符的位置值加上1字符串
例子:
var a="i am a boy";
var b=a.slice(0,6); //"i am a"string
2、 針對數組的操做 slice spliceit
array.slice(start,end)
參數start是截取的開始數組索引,end參數等於你要取的最後一個字符的位置值加上1(可選)
注意的是:
a.若是不傳入參數二,那麼將從參數一的索引位置開始截取,一直到數組尾
b.當只傳入一個參數,且是負數時,且 |負數| 絕對值不大於數組長度,從後向前取值
c.當只傳入一個參數,是負數時,而且參數的絕對值大於數組length時,會截取整個數組
d.當傳入一個參數,大於length時,將返回一個空數組
e.當傳入兩個參數一正一負時,length也會先於負數相加後,再截取
var a=[1,2,3,4,5,6];
var b=a.slice(2,-3); //[3]方法
2.splice 從array中移除一個或多個數組,並用新的item替換它們。
array.splice(start,deleteCount,item...)
參數start是從數組array中移除元素的開始位置。
參數deleteCount是要移除的元素的個數。
參數start是從數組array中移除元素的開始位置。參數deleteCount是要移除的元素的個數。
var a=['a','b','c'];
var b=a.splice(1,1,'e','f'); //a=['a','e','f','c'],b=['b']總結