如何修复jslint消息不安全'。'

时间:2011-09-08 12:30:39

标签: javascript jslint

jslint报告邮件不安全'。'。

在第

html = /<body.*?>([\s\S]*)<\/body>/.exec(responseText);

如何解决这个问题?

更新

在身体之后和关闭括号之前可能有属性所以\ s?不能用。 Javascript在浏览器中运行,使用jQuery。 哪个是从字符串中提取body元素内容而不是这个的最佳方法?

3 个答案:

答案 0 :(得分:17)

如果您真的希望它匹配所有内容并且不希望jslint错误,您可以尝试这样的事情。

var everything = /.*?/;// not jslint acceptable
var all = /[\w\W]*?/;// jslint acceptable

基本上它表示任何单词字符和任何非单词字符......它几乎涵盖了所有内容。

答案 1 :(得分:17)

您可以将regexp: true添加到jsLint选项中。只需在您的javascript文件中添加一行,如:

/*jslint indent: 4, maxerr: 50, vars: true, regexp: true, sloppy: true */

答案 2 :(得分:5)

JSLint中的检查是存在的,因为如果您允许任何char(.)或除了某些指定的([^x])之外的任何char,您可以获得您不期望的匹配。如果在JSLint中启用了该检查,则需要编写正则表达式应该匹配的正则表达式。

如果你不想关闭那个检查,并且你想要一个没有错误的LINT,那么你可以确定在'body'的'y'和结束尖括号之间找到什么是正常的,然后写你的正则表达式。