例如:
"1+1=2".replace(/=/,"aa");
"1+1=2".replace(/\=/,"aa");
Run Code Online (Sandbox Code Playgroud)
返回相同的结果。
这是否意味着我不必在 JavaScript 中转义“=”(等号)?我记得我总是必须在 Java 和 .NET 中转义等号。
我试图从https://www.ecma-international.org/ecma-262/7.0/index.html找到一些信息,但没有想出任何东西。
任何人都可以帮我找到规范是否谈到转义等号?
我会在 MDN 网络文档中使用此表。您会发现这=没有特殊含义 - 正如@Barmar 所说。您提到了Lookaheads,它使用?=,但没有前导,?它只是一个等号。
没有很多特殊字符需要额外的特殊字符来“工作”,我想这就是它令人困惑的原因。将其视为与和-的组合:[]
0-9匹配“0-9”[0-9]匹配“0”和“1”以及...和“9”[0\-9]匹配“0”和“1”以及...以及“9”和“-”所以 just-没有意义,也不必转义,只有与方括号结合时才可以。这同样适用于=有/无?。