JavaScript字符表达式
'\z' === 'z' // true
'\172' === 'z' // true
'\x7A' === 'z' // true
'\u007A' === 'z' // true
'\u{7A}' === 'z' // true
- codePointAt()
- fromCodePoint()
字符串遍历
for…of
- at()方法,可以识别Unicode编号大于0xFFFF的字符,返回正确的字符。
var text = String.fromCodePoint(0x20BB7);
'abc'.at(0) // "a"
text.at(0) // "��"
indexOf类似方法
var s = 'Hello world!';
s.startsWith('Hello') // true
s.endsWith('!') // true
s.includes('o') // true
///可以支持第二个参数,表示开始搜索的index
- repeat方法
返回字符串
参数如果是小数,会被取整。
参数是负数或者Infinity,会报错
如果参数是0到-1之间的小数,则等同于0
如果repeat的参数是字符串,则会先转换成数字。
var a='x'.repeat(3)
a//'xxx'
- padStart()和padEnd()
如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。
如果省略第二个参数,默认使用空格补全长度。
'x'.padStart(5, 'ab') // 'ababx'
'x'.padStart(4, 'ab') // 'abax'
'x'.padEnd(5, 'ab') // 'xabab'
'x'.padEnd(4, 'ab') // 'xaba'
模板字符串
- 用反引号“
- 使用模板字符串表示多行字符串,所有的空格和缩进都会被保留在输出之中。
- 模板字符串中嵌入变量,需要将变量名写在${}之中。
- 模板字符串之中还能调用函数。