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 中引入的。