1.数组 -----> slice()、splice()方法
(1) .slice(start,end)
start:设定新数组的起始位置;如果是负数,则表示从数组尾部开始算起(-1
指最后一个元素,-2 指倒数第二个元素,以此类推)
end:设定新数组的结束位置;如果不填写该参数,默认到数组结尾;如果是负数,则表示从数组尾部开始算起(-1 指最后一个元素,-2指倒数第二个元素,以此类推)
使用:
var arr = [1, 2, 3, 4, 5, 6];
console.log(arr.slice(3)); ----->[4,5,6]
console.log(arr.slice(3, 6)); ----->[4,5,6]
console.log(arr.slice(3, -1)); ----->[4,5]
console.log(arr.slice(3, -2)); ----->[4]
console.log(arr.slice(-3, 6)); ----->[4,5,6]
console.log(arr.slice(-3, -1)); ----->[4,5]
(2).splice(start,deleteCount,item...)
start:从那里开始截取(数组索引)
deleteCount:截取长度(截取数组中几个元素)
item:新增加的数组元素(注意,新增的元素显示位置在开始截取的位置)
使用:
var arr = [1, 2, 3, 4, 5, 6];
var arr1 = arr.splice(3) --->arr[1,2,3],arr1[4,5,6]
var arr1 = arr.splice(3, 3) --->arr[1,2,3],arr1[4,5,6]
var arr1 = arr.splice(3, 100) --->arr[1,2,3],arr1[4,5,6]
var arr1 = arr.splice(3, 3, 7) --->arr[1,2,3,7],arr1[4,5,6]
var arr1 = arr.splice(3, 2, 7) --->arr[1,2,3,7,6],arr1[4,5]
var arr1 = arr.splice(3, 2, 7, 8, 9, 10) --->arr[1,2,3,7,8,9,10,6],arr1[4,5]
2.字符串 -----> slice()、split()
(1) .slice(start,end)
start:设定新字符串的起始位置;如果是负数,则表示从字符串尾部开始算起(-1
指最后一个元素,-2 指倒数第二个元素,以此类推)
end:设定新字符串的结束位置;如果不填写该参数,默认到数组结尾;如果是负数,则表示从字符串尾部开始算起(-1 指最后一个元素,-2指倒数第二个元素,以此类推)
注意:空格也算一个字符串
使用:
var str = "123456";
console.log(str.slice(3)); ----->"456"
console.log(str.slice(3, 6)); ----->"456"
console.log(str.slice(3, -1)); ----->"45"
console.log(str.slice(3, -2)); ----->"4"
console.log(str.slice(-3, 6)); ----->"456"
console.log(str.slice(-3, -1)); ----->"45"
(2).split(separator,howmany)
separator:必需填。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
使用:
var str = "1 234,5,6";
console.log(str.split("")); ----->['1', ' ', '2', '3', '4', '5', '6']
console.log(str.split("", 3)); ----->['1', ' ', '2']
console.log(str.split(",")); ----->['1 234', '5', '6']
console.log(str.split(" ")); ----->['1', '234,5,6']
console.log(str.split(" ", 1)); ----->['1']