slice splice split 这三个真的更容易混淆,下面来做一下总结
一、针对字符串操作的有 split ,slice- split 方法用于把一个字符串分割成字符串数组。
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"二、 针对数组的操作 slice splice
- slice 对数组进行部分截取,并返回一个数组副本
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']