我有一个正则表达式:
return (str+'').replace(/^(.)|\s(.)/g, function ( $1 ) {
return $1.toUpperCase ( );
});
我收到以下 jslint 错误:
不安全'.'
是什么让字符集的否定“不安全”?
我有一个正则表达式:
return (str+'').replace(/^(.)|\s(.)/g, function ( $1 ) {
return $1.toUpperCase ( );
});
我收到以下 jslint 错误:
不安全'.'
是什么让字符集的否定“不安全”?
您可以通过告诉 JSLint 忽略它来“修复”警告:添加regexp: true
到文件顶部的 JSLint 设置中。
这是JSLint 对默认情况下为什么.
和[^...]
生成警告的解释:
它们匹配的材料比预期的要多,从而使攻击者能够混淆应用程序。在安全应用程序中进行验证时,不应使用这些表单。
因此,如果您的正则表达式用于输入/表单验证,那么您可能需要注意警告并使用稍微不同的代码。如果您将它用于其他任何事情,则没有理由启用警告。