假设我有一个 JavaScript 函数:
function myfunction (x) {
if (x===0) {
return false; //return;
};
//some code
};
return
之间有区别吗?或return false
?
我这么问是因为有人建议我只使用 return (他没有解释原因)。
我用它来退出函数而不做任何其他事情。在这个简单的例子中,我可以使用 if (x!==0) {};
但在较长的函数中,嵌套 if 语句也许(如果我错了请告诉我)不是一个好主意。
最佳答案
考虑一下这段代码
function myFunc(){
return; // exists function and returns `undefined`
}
const myVar = myFunc() // myVar === undefined
并使用false
function myFunc(){
return false; // exists function and returns `false`
}
const myVar = myFunc() // myVar === false
在这两种情况下,这都是相同的:
if (!myFunc()) { console.log('this gets executed if falsy value is passed') }
因此,对于这个用例来说,它们几乎是相同的(请注意,如果您与 ===
进行任何其他类型的比较,那就是不同的故事),您应该更喜欢使用哪一个?
我建议始终返回一些内容,在本例中是false
,因为如果您的函数没有return
语句,那么它将始终返回undefined
>。因此,为了更容易调试,最好返回 false
而不是 undefined
,因为你会立即知道 return 语句确实被执行了,而使用 undefined
code> 您还有 1 个步骤需要检查。
关于javascript - return 和 return false 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47597864/