替换产生布尔值的短代码以便在具有函数的条件中使用是一种好习惯

时间:2016-12-23 14:41:46

标签: javascript

我在几行代码上有这样的条件:

if ( i < DEVICES ) { .... some code

这段代码在我的代码中重复了几次,确切地说是15次。 问题是,由于这是重复的,我创建了一个替换验证的函数:

function isDevice(i) {return i < DEVICES; }

用函数替换了我的所有条件:

if ( isDevice(i) ) { ... some code 

现在我在想,即使代码重复多次,是否真的值得使用该功能?我在问,因为我使用了更多的代码来抽象重复15次的内容,但这是一个非常简单的验证。

2 个答案:

答案 0 :(得分:4)

是的。如果你不得不改变某些条件(例如你犯了一个错误而且必须

i < DEVICES-1

或类似的东西。

您不必更改15次,但只需更改一次。

答案 1 :(得分:2)

由@str评论,可读性为王。如果您的程序有任何用处,它将比维护开发花费更多的时间进行维护。因此,如果有疑问,请始终为您(或未来的同事)编写代码,以便在您最初编写代码时不知道您在想什么。

由于i < DEVICES-1的可读性低于isDevice(i),我会投票支持使用该功能。