jslint报告消息不安全'。'。如何解决jslint消息不安全'。'
在行
html = /<body.*?>([\s\S]*)<\/body>/.exec(responseText);
如何解决这一问题?
更新
体后和关闭托架可以有属性,这样\ S前?无法使用。 Javascript在浏览器中运行,使用jQuery。 从字符串中提取身体元素内容的最佳方式而不是此?
jslint报告消息不安全'。'。如何解决jslint消息不安全'。'
在行
html = /<body.*?>([\s\S]*)<\/body>/.exec(responseText);
如何解决这一问题?
更新
体后和关闭托架可以有属性,这样\ S前?无法使用。 Javascript在浏览器中运行,使用jQuery。 从字符串中提取身体元素内容的最佳方式而不是此?
如果您确实希望它匹配所有内容并且不希望发生jslint错误,您可以尝试类似此方法。
var everything = /.*?/;// not jslint acceptable
var all = /[\w\W]*?/;// jslint acceptable
基本上它说任何单词字符和任何非单词字符......几乎涵盖了一切。
在JSLint中检查是否存在,因为如果您允许任何字符(.
)或除某些指定的字符([^x]
)之外的任何字符,您可能会得到您不期望的匹配。如果您在JSLint中打开了该检查,则需要编写正则表达式来指明应该匹配的正则表达式。
如果您不想关闭该检查,并且您想要一个无错的LINT,请确定您认为可以在“body”的“y”与关闭的尖括号之间找到什么,以及以这种方式编写你的正则表达式。
您可以将regexp: true
添加到jsLint选项。只需添加一行到您的JavaScript文件,如:
/*jslint indent: 4, maxerr: 50, vars: true, regexp: true, sloppy: true */
有点古怪,但正是我所需要的。谢谢。 – phatmann
我发现jslint为什么是一个完全清晰的正则表达式抛出一个错误令人着迷,但是当你混淆了你实际正在做的事情时,它突然变得很好。 – timgeb