字符串方法使用语法:
字符串.方法名()
注意:任何字符串方法都不会改变原字符串内容
字符串.charAt(索引)
var str = 'qwert'
console.log(str.charAt(0)) // 'q'
console.log(str.charAt(4)) // 't'
console.log(str.charAt(40)) // ''
字符串.charCodeAt(索引)
NaN
var str = 'qwert'
console.log(str.charCodeAt(0)) // 113
console.log(str.charCodeAt(4)) // 116
console.log(str.charCodeAt(40)) // NaN
字符串.toUpperCase()/字符串.toLowerCase()
var str = 'qwERt1'
console.log(str.toLowerCase()) // 'qwert1'
console.log(str.toUpperCase()) // 'QWERT1'
字符串.indexOf(字符片段)
-1
var str = 'qweryterty'
console.log(str.indexOf('e')) // 2
console.log(str.indexOf('z')) // -1
console.log(str.indexOf('er')) // 2
字符串.indexOf(字符片段, 起始索引)
-1
var str = 'qweryterty'
console.log(str.indexOf('e', 3)) // 6
console.log(str.indexOf('e', 7)) // -1
console.log(str.indexOf('er', 4)) // 6
indexOf
方法一样
indexOf
是从数组开头的数据开始从前往后查找传入的字符片段是否存在lastIndexOf
是从数组最后的数据开始从后往前查找传入的字符片段是否存在字符串.includes(字符片段)
true
,不存在则返回false
var str = 'wertywert'
console.log(str.includes('rt')) // true
console.log(str.includes('rttt')) // false
字符串.substr(起始索引, 个数)
var str = 'qweryterty'
console.log(str.substr(2, 3)) // 'ery'
console.log(str.substr(2)) // 'eryterty'
字符串.substring(索引, 索引)
var str = 'qweryterty'
console.log(str.substring(2, 3)) // 'e'
console.log(str.substring(3, 2)) // 'e'
console.log(str.substring(2)) // 'eryterty'
字符串.slice(起始索引, 结束索引)
-1
表示最后一个字符,-2
表示倒数第二个字符…var str = 'qweryterty'
console.log(str.slice(2, 3)) // 'e'
console.log(str.slice(3, 2)) // ''
console.log(str.slice(2)) // 'eryterty'
console.log(str.slice(2, -1)) // 'erytert'
字符串.split(分隔符)
var str = '2023-1-1'
console.log(str.split('-')) // ['2023', '1', '1']
console.log(str.split()) // ['2023-1-1']
console.log(str.split('&')) // ['2023-1-1']
console.log(str.split('')) // ['2', '0', '2', '3', '-', '1', '-', '1']
字符串.replace(替换下的字符片段, 替换上的字符内容)
var str = 'qwerQQtyuQQiweQQr'
console.log(str.replace('QQ', '微信')) // 'qwer微信tyuQQiweQQr'
// 循环替换
do {
var index = str.indexOf('QQ')
str = str.replace('QQ', '微信')
} while (index !== -1)
console.log(str) // 'qwer微信tyu微信iwe微信r'
较新版本的浏览器可以使用replaceAll()方法,但不建议使用
字符串.trim()
var str = ' Hello world! '
console.log(str.trim()) // 'Hello world!'
字符串.trimLeft()/字符串.trimRight()
var str = ' Hello world! '
console.log( str.trimLeft()) // 'Hello world! '
console.log( str.trimRight()) // ' Hello world!'
console.log( str.trimStart()) // 'Hello world! '
console.log( str.trimEnd()) // ' Hello world!'
字符串.startsWith(字符片段)
true
,不是则返回false
var str = 'qwertywer'
console.log(str.startsWith('qwer')) // true
console.log(str.startsWith('qq')) // false
字符串.endsWith(字符片段)
true
,不是则返回false
var str = 'qwertywer'
console.log(str.endsWith('qwer')) // false
console.log(str.endsWith('er')) // true
字符串.concat(字符片段)
var str = 'abc'
console.log(str.concat('123456')) // 'abc123456'
字符串.repeat(数值)
var str = 'a'
console.log(str.repeat(2)) // 'aa'
console.log(str.repeat(10)) // 'aaaaaaaaaa'