在条件外部和内部使用"返回"有什么区别?



在 else 外部条件和在 else 条件中使用return有什么区别?

我知道最好的代码是没有用else我知道两者都在做类似的事情。有区别还是优势?


function f1() {
if (1 == 1) {
return true;
} else {
return false;
}
}
function f2() {
if (1 !== 1) {
return true;
} else {
return false;
}
return false
}

console.log(f1());
console.log(f2());

与您之前的问题无关,而仅与此相关:

在方法:2中,最后的return语句(即return true;)实际上是无用的。因为SaveVersionMainScreen()的最后一行不会执行,因为存在if并且else这两个条件都存在。这应该考虑到所有情况。

如果你在块代码中有if语句,并且在ifelse块中都包含return。它的意思是if块将执行并从方法return,或者else块将执行并return。下面的其他语句,块不会执行,编译器可能会给你错误,比如

无法联系到声明

例如:

SaveVersionMainScreen() {
let element = this.commonValidation(true);
if (element) {            
return false;
}
else{
return true;
}
// Below  statements will never run
var a=2;
var b=3;
var c=4;
return true;
}

完全改变你的问题的方法。无论如何,暂时留下我的答案。 您的版本 2 是一种不好的做法,代码无法在像 Java 这样的严格语言中工作,因为您有一个无法访问的 return 语句。至于你的测试,从你的函数中删除 else 应该为你解决它,但问题似乎出在测试而不是你的代码上。

SaveVersionMainScreen() {
let element = this.commonValidation(true);
if (element) {            
return false;
}
return true;
}

最新更新