如何命名方法

时间:2014-12-28 18:46:00

标签: javascript refactoring naming

我很遗憾地提出这个哲学问题,但我和同事有很长时间的争论。 有一个方法:d

function GetInterval(){ return someSimpleObj;}

要求更改此方法可能返回空结果。我的意思是没有找到数据。在关于返回null或异常的长期争论之后,我们决定返回null。

但是我建议将方法的签名改为

function GetIntervalOrNull()

之后开始另一个论点,即抛出空值是函数的明显行为,不需要重命名它。但是,我认为在没有警告的情况下返回空值是缺乏设计,并且通常不返回空值。 所以问题是:

  1. 为函数返回null通常是行为吗?
  2. 如何命名返回空值的函数?
  3. 你知道有GetSmthOrNull的图书馆吗?并且为哪些库抛出null是行为,而不是。
  4. 提前谢谢。

1 个答案:

答案 0 :(得分:4)

  

为函数返回null通常是行为吗?

如果它不是特殊情况,是的,它完全正常。例如,考虑DOM getElementById,如果没有匹配元素,则返回null,这不是例外,因此不能保证例外。或者JavaScript自己的String#match,如果字符串不包含正则表达式的任何匹配项,则会返回null

  

如何命名返回空值的函数?

这是基于意见的。但通常情况下,没有什么特别之处;见上面的例子。

  

你知道有GetSmthOrNull的库吗?

我还没碰到任何一个,没有。