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']总结