Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSHint:允许ASI返回空语句_Javascript_Jshint - Fatal编程技术网

Javascript JSHint:允许ASI返回空语句

Javascript JSHint:允许ASI返回空语句,javascript,jshint,Javascript,Jshint,在我的JavaScript中,如果不满足某些条件,我希望函数尽早退出,如下面的示例所示 (function () { var something = false if (!something) return doMoreStuff() }()) 我不喜欢使用分号,它工作得很好(上面的代码片段与预期的一样) JSHint不断给我错误换行错误'return'。虽然可以通过在return语句后添加分号来解决这一问题,但我宁愿在脚本中保留分号 是否有任何选项可以设置为允许在行尾不带分号

在我的JavaScript中,如果不满足某些条件,我希望函数尽早退出,如下面的示例所示

(function () {
  var something = false

  if (!something) return

  doMoreStuff()
}())
我不喜欢使用分号,它工作得很好(上面的代码片段与预期的一样)

JSHint不断给我错误
换行错误'return'
。虽然可以通过在return语句后添加分号来解决这一问题,但我宁愿在脚本中保留分号

是否有任何选项可以设置为允许在行尾不带分号的空返回

是否有任何选项可以设置为允许在行尾不带分号的空返回

不,没有。以下是提示:


如果
return
语句后面没有分号或值,它将始终进入
else
条件并始终发出警告。

也许您应该使用
return null
return undefined

如果(!something){return}
@alex23这是不同的。我的代码段返回
未定义的
,你的代码段返回
错误的
@这类似于在末尾添加分号。虽然它是正确的,但这不是我想要实现的。JavaScript是一种函数式语言,FP中的函数必须返回一个值。AFAIS您正在尝试模拟一种只会…返回的过程语言。但这不是JavaScript的一杯茶。出于同样的原因,我不想使用
returnundefined
returnfalse
returnnull
更有意义。这与以return语句本身结束行相同。
returnundefined
相当于一个
return
stmt("return", function () {
    if (this.line === state.tokens.next.line) {
        //...   
    } else {
        nolinebreak(this); // always warn (Line breaking error)
    }
    // ...
})