return 语句前换行
在 return
语句之前要求空行
🔧 可修复
此规则报告的一些问题可以通过 --fix
命令行 选项自动修复
此规则已在 ESLint v4.0.0 中被弃用,并由 padding-line-between-statements 规则取代。
关于在 JavaScript 中 return
语句之前是否应该有空行,并没有硬性规定。但是,清晰地划分返回函数的位置,可以极大地提高代码的可读性和清晰度。例如
function foo(bar) {
var baz = 'baz';
if (!bar) {
bar = baz;
return bar;
}
return bar;
}
添加换行符可以明显地将 return 语句与前面的行隔开,清楚地表明函数何时退出以及返回值是什么
function foo(bar) {
var baz = 'baz';
if (!bar) {
bar = baz;
return bar;
}
return bar;
}
规则详情
此规则要求 return
语句之前有空行,以提高代码清晰度,除非 return
语句位于语句组(例如 if 语句)中。在后一种情况下,return
语句不必通过它本身来划分。注释将被忽略,不计为空行。
此规则的不正确代码示例
在游乐场中打开
/*eslint newline-before-return: "error"*/
function foo1(bar) {
if (!bar) {
return;
}
}
function foo2(bar) {
if (!bar) {
return;
}
/* multi-line
comment */
}
此规则的正确代码示例
在游乐场中打开
/*eslint newline-before-return: "error"*/
function foo1() {
return;
}
function foo2() {
return;
}
function foo3(bar) {
if (!bar) return;
}
function foo4(bar) {
if (!bar) { return };
}
function foo5(bar) {
if (!bar) {
return;
}
}
function foo6(bar) {
if (!bar) {
return;
}
return bar;
}
function foo7(bar) {
if (!bar) {
return;
}
}
function foo8() {
// comment
return;
}
何时不使用它
如果您没有关于 return
语句之前的空白的严格约定,可以放心地禁用此规则。
相关规则
版本
此规则是在 ESLint v2.3.0 中引入的。