【发布时间】:2021-05-26 20:57:43
【问题描述】:
如果满足条件,编写一个有效执行一条语句的非常简单的函数最易读的方法是什么?
我觉得最具可读性的是:
function doSomething(myNumber){
if(myNumber !== null && myNumber > 5){
doTheThing();
}
}
但是,我的同事坚持认为保护子句使任何东西都更具可读性,并且总是这样编写这个函数:
function doSomething(myNumber){
if(myNumber === null || myNumber <= 5)
return;
doTheThing();
}
我知道,在更大的函数中,保护子句的可读性更高,尤其是在需要检查多个条件和/或需要抛出异常的情况下。但是在这样的情况下,我总是需要做三遍才能了解在哪种情况下会执行 doTheThing(),这对于这样一个简单的函数来说似乎很荒谬。
【问题讨论】:
标签: coding-style readability code-readability human-readable guard-clause