今日主角 -> String.prototype.replace
有两个参数
第一个参数:字符串 | 正则,匹配被替换的内容
第二个参数: 字符串 | 函数,新的内容
注意:当第一个参数是字符串时,只对第一个匹配到的字符串进行替换。
重点记一下第一个参数是正则的情况:
- 第二个参数是字符串时,字符串里可以用到的参数有
$$ : 插入“$”
$& : 插入匹配到的子串
$` : 插入匹配到的子串前面的内容
$' :插入匹配到的子串后面的内容,注意这时候字符串用双引号包裹不要用单引号了
$n : n 为 1 - 99 的正整数,表示插入第 n 个括号中匹配到的子串,不存在则插入字面量,例如插入“$3”
$<Name> :Name 是分组名称,表示插入对应的分组捕获的内容,只有在支持命名分组捕获的浏览器中生效;没有对应的分组则插入空字符串
- 第二个参数是函数时,函数的参数依次如下
match : 表示匹配到的子串
p1, p2, ... : 表示第 n 个括号中匹配到的内容
offset : 匹配到的子串在原字符串中的偏移量,例如 'bc' 在 'abcd' 中的偏移为 1
string : 被匹配的原字符串
NamedCaptureGroup : 命名捕获组匹配的对象