Javascript lambda/anonymous eslint 或 jslint 中的函数长度警告
Javascript lambda/anonymous function length warning in eslint or jslint
对于 javascript,是否有 eslint(甚至 jslint)设置对给定长度(例如:超过 5 行)的 anonymous/lambda 函数,尤其是回调发出警告?
我正在尝试查看是否有一种方法可以使用 lint 执行比这更干净的代码:
...
var a = foo(b, function(c, cb1) {
// dozens of lines of code
cb1(d, function(e, cb2){
// dozens of lines of code
cb2(f, function(g, cb3) {
// dozens of lines of code
cb3(...);
// dozens of lines of code
});
});
});
...
我知道可以限制嵌套函数的数量,但我认为这些函数的长度也可以尽可能短。
您可以使用 eslint max-statements 选项强制每个函数执行一定数量的语句。
Jordan 提到的 max-depth 和 max-nested-callbacks 对于防止嵌套条件和回调太深很有用。您可能还对限制 complexity 感兴趣,这意味着一个函数可以有多少个不同的结果。
对于 javascript,是否有 eslint(甚至 jslint)设置对给定长度(例如:超过 5 行)的 anonymous/lambda 函数,尤其是回调发出警告?
我正在尝试查看是否有一种方法可以使用 lint 执行比这更干净的代码:
...
var a = foo(b, function(c, cb1) {
// dozens of lines of code
cb1(d, function(e, cb2){
// dozens of lines of code
cb2(f, function(g, cb3) {
// dozens of lines of code
cb3(...);
// dozens of lines of code
});
});
});
...
我知道可以限制嵌套函数的数量,但我认为这些函数的长度也可以尽可能短。
您可以使用 eslint max-statements 选项强制每个函数执行一定数量的语句。
Jordan 提到的 max-depth 和 max-nested-callbacks 对于防止嵌套条件和回调太深很有用。您可能还对限制 complexity 感兴趣,这意味着一个函数可以有多少个不同的结果。