关于字符串的操作

前端跟后端参数交互,有时候前端对字符串的拼接是必不可少的

  1. slice()
    可通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分

str.slice(start, end)

  • start(必需):规定从何处开始选取。如果是负数,那么它规定从字符串尾部开始算起的位置。也就是说,-1 指最后一个字符,-2 指倒数第二个字符,以此类推。
  • end(可选):规定从何处结束选取,即结束处的字符下标。如果没有指定该参数,那么截取的字符串包含从 start 到结束的所有字符。如果这个参数是负数,那么它规定的是从数组尾部开始算起的字符。
let str = 'unique'
console.log(str.slice(2))	 // 输出值为 'ique'   从索引为2的字符起一直到结束
console.log(str.slice(-2))   // 输出值为 'ue'   从倒数第2个字符起一直到结束
console.log(str.slice(0,2)   // 输出值为 'un'  从开始一直到索引为2的前一个字符
console.log(str.slice(0,-2)) // 输出值为 'uniq' 从开始一直到倒数第2个字符的前一个字符
  1. substring()
    用于提取字符串中介于两个指定下标之间的字符

注意事项

  • 如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
  • 如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
  • 如果 start 或 end 为负数,那么它将被替换为 0。

str.substring(start, stop)

  • start(必需):一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
  • stop(可选):一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。
    返回值说明
    该方法返回一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
let str = 'unique'
console.log(str.substring(3)) 	   // 输出值 'ni'  从索引为3的字符起一直到结束
console.log(str.substring(-3)) 	   //输出值 'unique' 从索引为0的字符起一直到结束 (负数自动替换成0)
console.log(str.substring(10)) 	   // 输出值 ' ' 
console.log(str.substring(2,4));   // 输出值 'iq '  从索引为2的字符起到索引为4的前一个字符结束
console.log(str.substring(4,2));   // 输出值 'iq '  end 和start自动交换 
console.log(str.substring(2,20));  // 输出值 'ique '  从索引为2的字符起到索引为20的前一个字符结束
  1. substr()
    用于返回一个从指定位置开始的指定长度的子字符串

注意事项

  1. 如果 length 为 0 或负数,将返回一个空字符串。
  2. 如果没有指定 length,则子字符串将延续到 stringObject 的最后。
  3. 如果 length 为负数,那么它将被替换为 0。

str.substr(start, length)

  • start(必需):所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
  • length(可选):在返回的子字符串中应包括的字符个数。
let str = 'unique'
console.log(str.substr(3)) 	   // 输出值 'que'  从索引为3的字符起一直到结束
console.log(str.substr(-2)) 	   //输出值 'ue' 从后往前数2位开始截取
console.log(str.substr(10)) 	   // 输出值 ' ' 
console.log(str.substring(1,3));   // 输出值 'niq '  从索引为1的字符起截取长度为3的字符串
  1. str.indexOf()
    返回字符串中匹配子串的第一个字符的下标 如果没有的话返回 -1
    arr.indexOf()
    返回数组中匹配的下标 没有的话返回 -1
let str = 'uinque'
str.indexOf('e')  // 5
str.indexOf('99') // -1
  1. lastIndexOf() 与indexOf用法一致,返回的是从又到左开始寻找
let str = 'unieque'
str.lastIndexOf('2') // 6
  1. split()
    使用一个指定的分隔符把一个字符串分割存储到数组。使用一个指定的分隔符把一个字符串分割存储到数组。
let str  = 'u|n|i|q|i|e'
str.split('|')  // ["u", "n", "i", "q", "i", "e"]
  1. join()
    使用一个指定的分隔符将一个数组合并为一个字符串。 使用一个指定的分隔符将一个数组合并为一个字符串。
let arr = ['u', 'n', 'i', 'q', 'i', 'e']
arr.join('2') // 'u2n2i2q2i2e'
  1. concat()
    将两个数组连接在一起
let arr1 = ['1', '2', '3']
let arr2 = ['a', 'b', 'c']
let arr3 = arr1.concat(arr2)  // ["1", "2", "3", "a", "b", "c"]
  1. charAt()
    返回指定位置的字符。字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。
let str = 'unique'
let chatStr = str.charAt(2) // 'i'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值