为什么 JSLint 在以下 JavaScript 行中返回“错误的转义”?
param = param.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
从 JSLint 文档中,我认为这没问题,因为正则表达式文字前面有一个括号:
正则表达式以简洁和神秘的符号编写。JSLint 寻找可能导致可移植性问题的问题。它还尝试通过推荐显式擒纵机构来解决视觉上的歧义。
JavaScript 的正则表达式字面量语法重载了 / 字符。为避免歧义,JSLint 期望正则表达式文字前面的字符是 ( 或 = 或 : 或 , 字符。