【问题标题】:How to name method [closed]如何命名方法[关闭]
【发布时间】:2014-12-28 18:45:59
【问题描述】:

我很抱歉提出这个哲学问题,但我和同事有一个很长的争论。 有一个方法:d

function GetInterval(){ return someSimpleObj;}

要求已更改,此方法可以返回空结果。我的意思是当没有找到数据时。在关于返回 null 或异常(应该在外部范围内处理)的长时间争论之后,我们决定返回 null。

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

function GetIntervalOrNull()

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

  1. 为函数返回 null 是常见的行为吗?
  2. 返回空值的函数应该如何命名?
  3. 您知道有 GetSmthOrNull 的库吗?对于哪些库抛出 null 是可以的行为,而对于哪些则不是。

提前谢谢你。

【问题讨论】:

  • 你们停止争论,开始编码吧。方法返回什么或它的名字并不重要,只要它完成它应该做的事情,我会更关心你们不使用camelCase而不是函数的名称!

标签: javascript refactoring naming


【解决方案1】:

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

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

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

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

你知道有 GetSmthOrNull 的库吗?

我没有遇到任何,没有。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多