在平时前端开发中,我们不难发现经常会在字符串和数组之间来回切换,不管是前端回显还是接口传参,每次使用都会百度搜一下。
作为一名合格的前端,本人觉得很有必要将js中常用的方法做个总结并且牢记于心,先将其记录下来与大家共勉(以下所有示例将在vue3+ts的基础上):
一、关于 字符串 的常用方法
1.split ( separator, howmany )
用于把字符串分割成一个字符串数组。
separator参数:必需填。字符串或正则表达式,从该参数指定的地方分割 字符串。
howmany参数:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
let testStr = ref<string>('我是没有符号的一句话')
let testStr2 = ref<string>('我 是打随意空格 的一句话')
let testStr3 = ref<string>('我,是,打,逗号,的话')
console.log('testStr:',testStr.value.split(''))
console.log('testStr2:',testStr2.value.split(' '),testStr2.value.split(' ',2))
console.log('testStr3:',testStr3.value.split(','))
2.cancat()
string.concat(string1, string2, …, stringX),用于连接两个或多个字符串。
let testStr = ref<string>('我是1')
let testStr2 = ref<string>('我是2')
console.log('concat:',testStr.value.concat(testStr2.value))
3.charAt()
charAt() 方法可返回字符串中指定位置的字符。
let testStr = ref<string>('我是一个字符串')
let s = testStr.value.charAt(2)
console.log('charAt:',s)
4.indexOf
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
与上个方法charAt()刚好呼应。
let testStr = ref<string>('我是一个字符串')
let s = testStr.value.indexOf('是')
console.log('indexOf:',s)
5.includes
includes() 方法用于判断字符串是否包含指定的子字符串。
如果找到匹配的字符串则返回 true,否则返回 false。
注意: includes() 方法区分大小写。
let testStr = ref<string>('我是test一个字符串')
let testStr2 = ref<string>('我是test')
let testStr3 = ref<string>('我是TES')
console.log('indexOf:',testStr.value.includes(testStr2.value),testStr.value.includes(testStr3.value))
6.repeat
repeat() 方法字符串复制指定次数。
let testStr = ref<string>('我是一个字符串')
let s = testStr.value.repeat(3)
console.log('repeat:',s)
7.replace
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
let testStr = ref<string>('我是一个字符串一')
let s = testStr.value.replace('字符串','大聪明')
let s2 = testStr.value.replace(/一/g,'大聪明')
console.log('repeat:',s,s2)
8.slice
slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
let testStr = ref<string>('我是一个字符串一')
let s = testStr.value.slice(1)
let s2 = testStr.value.slice(1,5)
console.log('slice:',s,s2)
9.split
split() 方法用于把一个字符串分割成字符串数组。
let testStr = ref<string>('我是一个 字符串一')
let s = testStr.value.split('')
let s2 = testStr.value.split(' ')
console.log('split:',s)
console.log('split:',s2)
10.toLowerCase()和toUpperCase()方法
toLowerCase() 方法用于把字符串转换为小写。
toUpperCase() 方法用于把字符串转换为大写。
let testStr = ref<string>('i am a Test')
let s = testStr.value.toLocaleLowerCase()
let s2 = testStr.value.toLocaleUpperCase()
console.log('toLocaleLowerCase:',s)
console.log('toLocaleUpperCase:',s2)
11.trim
trim() 方法用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。
trim() 方法不会改变原始字符串。
trim() 方法不适用于 null, undefined, Number 类型。
let testStr = ref<string>(' i am a Test ')
let s = testStr.value.trim()
console.log('trim:',s)
console.log('testStr:',testStr.value)