如果满足条件,编写一个有效执行一条语句的非常简单的函数的最易读的方法是什么?
我觉得最具可读性的是:
function doSomething(myNumber){
if(myNumber !== null && myNumber > 5){
doTheThing();
}
}
然而,我的同事坚持认为保护子句使任何东西都更具可读性,并且总是这样编写这个函数:
function doSomething(myNumber){
if(myNumber === null || myNumber <= 5)
return;
doTheThing();
}
我知道保护子句在更大的函数中更具可读性,尤其是在需要检查多个条件和/或需要抛出异常的情况下。但是在这样的情况下,我总是需要做三遍才能了解在哪种情况下会执行 doTheThing() ,这对于这样一个简单的函数来说似乎很荒谬。