【发布时间】:2013-04-27 00:51:20
【问题描述】:
我正在尝试使用 JSLint 评估匿名 JavaScript 函数。但是,JSLint 无法评估它,因为该函数缺少名称。我可以设置什么选项来允许 JSLint 忽略该错误?
类似:
function(test) {
return;
}
结果:
Missing name in function statement.
function(test) {
编辑:为了澄清,匿名函数将用作 CouchDB 的视图。我想确保语法在它到达数据库之前是正确的。
【问题讨论】:
-
这不仅仅是一个 jsLint 问题。这是一个 SyntaxError,所以你的代码根本不会运行。如果您想就地调用它,请执行
(function(test) { return; })(),尽管我不明白这一点。如果你不打算调用它,那么匿名函数就没有意义了。 -
它确实有一点——查询将用作 CouchDB 的映射函数。我想在它到达数据库之前评估函数的语法。
-
所以你说它不在程序中,但你只是想使用 jsLint 来验证它?如果是这样,那么为什么不给它一个名称或将它分配给一个变量呢?您不能指望验证器对它只能视为损坏的代码视而不见。
-
分配给一个变量将是最好的选择。至于您的最后一条评论,我希望它假设 JSLint 将允许匿名函数,当我可以在 JSLint 为 CouchDb 假设的选项中设置
couch: true时。 -
该选项仅定义将在 CouchDB 环境 AFAIK 中找到的全局变量。语法验证器在其他方面是相同的。
标签: javascript jslint