1.substring(startIndex,endIndex) -- 不改变原字符串,返回截取后的字符
substring() 方法返回一个字符串在开始索引到结束索引之间的一个子集, 或从开始索引直到字符串的末尾的一个子集。
- startIndex --- 需要截取字符的起始索引,索引对应的字符是截取出来的字符串的首字母
- endIndex --- 可选参数
- endIndex 为正数且大于startIndex ,substring将截取 startIndex - endIndex 之间的字符
- endIndex 小于startIndex或者为负数,substring将反向截取(如果任一参数小于 0 或为 NAN,则被当作 0)
按照索引截取startIndex 可以截取到startIndex 对应的字符,endIndex 只能截取到对应索引-1的字符,如果需要截取到末尾后几位,endIndex传入 str.length 方便计算
substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置
let str = '123456789'
str.substring() // '123456789'
##只传入startIndex 将默认截取 startIndex 对应的字符为起点 至 字符串末尾
str.substring(5) // '56789'
str.substring(2,6) // '34567'
str.substring(2,9) // '3456789'
##如果任一参数大于 str.length,则被当作 str.length
str.substring(2,100) // '3456789'
##如果 startIndex 大于 endIndex,则 substring 的执行效果就像两个参数调换了一样。见下面的例子。
str.substring(8,2) // '345678'
##如果任一参数小于 0 或为 NAN,则被当作 0
str.substring(8,-5) // '12345678'
str.substring(2,8) // 返回'345678' 索引8对应的字符'8'截取不到,str.substring(2,str.length) 即可截取到9
2.substr(startIndex,number) --- 不改变原字符串,返回截取后的字符
substr并非JavaScript核心语言的一部分,未来将可能会被移除掉。尽可能使用substring 替代它
- startIndex --- 需要截取字符的起始索引,索引对应的字符是截取出来的字符串的首字母
- number --- (可选参数)需要截取的字符的长度,在startIndex截取的首字母基础上
let str = '123456789'
str.substr() // '123456789'
str.substr(2) // '3456789'
##返还长度为5,起始索引为2的字符串
str.substr(2,5) // '3456789'
3.slice(startIndex,endIndex) --- 用于从一个数组中截取出一个新数组(不改变原数组),也可以用于截取字符串,但不建议使用slice()
let arr = [1,2,3,4,5,6,7,8,9]
let str = '123456789'
arr.slice() // [1,2,3,4,5,6,7,8,9]
str.slice(2) // '3456789'
##只传入startIndex默认截取到最后一个值
arr.slice(2) // [3,4,5,6,7,8,9]
##和substring一样 endIndex会选中endIndex对相应索引元素的前一个元素
arr.slice(2,6) // [3,4,5,6]
str.slice(2,6) // '3456'
4.split() --- 用于将字符串分割为数组
split(separator,howmany)
- separator --- (必传)字符串或正则表达式,从该参数指定的地方分割字符串。
- howmany --- (可传)限定截取为数组后的数组长度
let str = "How are you doing today?"
str.split(" ") // ["How", "are", "you", "doing", "today?"]
str.split(/\s+/) // ["How", "are", "you", "doing", "today?"]
##split后 再 拼接 ' ' 空字符串 最后得到的是处理后的字符串
str.split(" ") + " " // "How,are,you,doing,today?"
## 3 限制截取后的数组长度
str.split(" ",3) // ["How", "are", "you"]
5.splice() --- 用于操作数组内的值 删除/添加(会改变原始数组)
splice(index,howmany,add)
- index --- (必传)
- howmany --- (可选) 截取数组的长度
- add --- (可选)向数组添加的参数
let arr = [1,2,3,4,5,6,7,8,9]
arr.splice(2) // [3, 4, 5, 6, 7, 8, 9] arr已被改变
console.log(arr)// [1 , 2]
arr.splice(2,5) // [3, 4, 5, 6, 7] 截取到的数组的长度为5
console.log(arr) // [1, 2, 8, 9]
##split 的第3个参数以及3以后的参数都看作为 add ,将原数组 index --- howmany 索引对应位置的值
arr.splice(2,5,'向数组添加的参数','我也是add参数',9527,'可以写多个') // [3, 4, 5, 6, 7]
console.log(arr) // [1, 2, "向数组添加的参数", "我也是add参数", 9527, "可以写多个", 8, 9]
【看完有收获请点个赞哦~~】