JavaScript String.replace()

Dón*_*nal 3 javascript regex string

以下更换

"index.html".replace('\.html$', '_fr.html');
Run Code Online (Sandbox Code Playgroud)

返回"index.html",表示第一个参数与任何内容都不匹配.但是,如果我删除"$"

"index.html".replace('\.html', '_fr.html');
Run Code Online (Sandbox Code Playgroud)

然后第一个参数匹配,并返回"index_fr.html".

回到第一个例子,有人可以解释为什么".html $"似乎与"index.html"不匹配?

Ski*_*ick 5

因为这不是正则表达式 - JavaScript中的正则表达式文字看起来像:

/\.html$/
Run Code Online (Sandbox Code Playgroud)

没有引号.String.replace采用字符串或正则表达式文字.