slice
截取字符串或数组,并返回一个新的字符串或数组(不改变原字符串或数组)
str.slice(start, end)
arr.slice(start, end)
substr(不建议使用)
截取字符串,并返回一个新的字符串(不会改变原数组)
str.substr(start, num)
substring
截取字符串,并返回一个新的字符串(不会改变原数组)
str.substring(start, end)
与 slice
的区别:
参数为正数的时候结果没区别
参数为负时,
slice
倒数计数,substring
将负数置为0start
位置在end
之后时slice
返回空字符串,substring
仍返回两个参数位置字符串
let str = 'abcdefghijklmnopqrstuvwxyz'
console.log('str.slice(3)', str.slice(3))
console.log('str.substring(3)', str.substring(3))
console.log('str.slice(3, 8)', str.slice(3, 8))
console.log('str.substring(3, 8)', str.substring(3, 8))
console.log('str.slice(3, 1)', str.slice(3, 1))
console.log('str.substring(3, 1)', str.substring(3, 1))
console.log('str.slice(-3)', str.slice(-3))
console.log('str.substring(-3)', str.substring(-3))
console.log('str.slice(-3, 7)', str.slice(-3, 7))
console.log('str.substring(-3, 7)', str.substring(-3, 7))
// str.slice(3) defghijklmnopqrstuvwxyz
// str.substring(3) defghijklmnopqrstuvwxyz
// str.slice(3, 8) defgh
// str.substring(3, 8) defgh
// str.slice(3, 1)
// str.substring(3, 1) bc
// str.slice(-3) xyz
// str.substring(-3) abcdefghijklmnopqrstuvwxyz
// str.slice(-3, 7)
// str.substring(-3, 7) abcdefg
splice
用于数组操作,可以对数组中的元素进行删除、插入和替换(会改变原数组)
arr.splice(start, num, arg1, arg2, ...)
split
以基于指定的分隔符将一个字符串分割成 多个子字符串,并将结果放在一个数组中(不会改变原数组)
str.split('分隔字符串')