jslint标记“危险评论”

时间:2012-06-14 17:05:01

标签: javascript jslint

鉴于此JavaScript代码(这只是一个引用网址的评论):

// see http://enterprisejquery.com/2010/10/how-good-c-habits-can-encourage-bad-javascript-habits-part-1/
打开“安全子集”的

JSLint会说

Dangerous comment.
// http://enterprisejquery.com/2010/10/how-good-c-habits-can-encourage-bad-javascript-habits-part-1/

评论如何危险?根据定义,评论不会被解析!或者是他们?

修改:使用其他网址并不一定是危险的。例如:

// http://enterprisejquery.com

不会触发该标志。评论中的一个URL如何“危险”,而另一个不是?

2 个答案:

答案 0 :(得分:3)

“危险”评论与正则表达式匹配:

/@cc|<\/?|script|\]\s*\]|<\s*!|&lt/i

在这种情况下,您的评论是“危险的”,因为它包含字符串“script”。

我认为这可能是误报。

答案 1 :(得分:2)

您可以使用eval手动执行评论:

http://googlecode.blogspot.com/2009/09/gmail-for-mobile-html5-series-reducing.html

  

为了将所有模块组合成一个资源,我们编写了每个模块   到一个单独的脚本标签并将代码隐藏在注释块内(/ *   * /)。当资源首次加载时,由于它被注释掉,因此不会解析任何代码。要加载模块,请找到该元素的DOM元素   相应的脚本标记,删除注释块,并使用eval()   代码。

此外,有人可能会意外地取消注释危险代码并创建漏洞。

默认情况下,不会解析JavaScript注释。但躺在身边并不是一件好事。