ES6 字符串处理
1、for...of
for...of 语句创建一个循环来迭代可迭代的对象。他以替代 for...in 和 forEach() ,
并支持新的迭代协议。for...of 允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等。
// 因为本期说下迭代字符串,呼应本期主题
比如:我又一个字符串tomcat 我怎么迭代呢?
for (var oneCode of 'tomcat') oneCode 就是一个属性
oneCode 每个迭代的属性值 被分配给该变量。
tomcat 一个具有可枚举属性并且可以迭代的对象
for (let codePoint of 'tomcat') {
console.log(codePoint)
}
2、字符串检索函数
传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中。
ES6 又提供了三种新方法
includes(), 返回布尔值,表示是否找到了参数字符串
startsWith(),返回布尔值,表示参数字符串是否在原字符串的头部
endsWith() 返回布尔值,表示参数字符串是否在原字符串的尾部
这三个方法都支持第二个参数,表示开始搜索的位置。
var s = 'tomcat';
s.startsWith('cat', 3) // true
3、repeat()
repeat方法返回一个新字符串,表示将原字符串重复n次
'x'.repeat(3) xxx
4、padStart(),padEnd()
padStart()和padEnd()一共接受两个参数
第一个参数是字符串补全生效的最大长度,第二个参数是用来补全的字符串。
ES6 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。
padStart()用于头部补全,
padEnd()用于尾部补全
'cat'.padStart(6,'tom') // 'tomcat'
'cat'.padStart(7,'tom') // tomtcat
5、matchAll()
matchAll当前字符串的所有匹配 该方法返回一个正则表达式
比如 一个正则表达式在字符串里面有多个匹配,以前 一般使用g修饰符,然后在循环里面逐一取出。
var regex = /zhangsan/g;
while (match = regex.exec(string)) {
matches.push(match);
}
string.matchAll(regex)
返回的是遍历器,所以可以用for...of循环取出。
声音简介
音频列表
- 2019-03
- 2019-03
- 2019-02
- 2019-02
- 2019-02
- 2019-02
- 2019-02
- 2019-02
- 2019-02
- 2019-01
查看更多
用户评论