看起来很多多少了,对吧? getWeightByType() 函数是一个自力的组件,仅仅用于决定各类型的权重值。并且它是可复竽暌姑的,你可以在其他任何函数中应用它。
getCollectionWeight() 稍微瘦了点身。
WEIGHT_NULL_UNDEFINED, WEIGHT_PRIMITIVE 还有 WEIGHT_OBJECT_FUNCTION 都是具备自文档才能的常量,经由过程它们的名字就可以看出各类型的权重。你就不须要猜测 1、2、4 这些数字的意义。
Step 2: 持续切分,使之具备扩大性
如不雅函数都短小清楚,定名简洁:代码读起来就会像诗一样迷人。
函数名称应当异常简洁:长短适中。幻想情况下,名称应当清跋扈的概括函数的功用,而不须要读者深刻懂得函数的实现细节。
然而,这个进级版依然有不足的处所。假如你计算对一个 Set,甚至其他用户自定义集合来实现权值计算。getCollectionWeight() 会快速膨胀,因为它包含了一组获得权值的具体逻辑。
让我们将获得 maps 权重的代码提取到 getMapValues(),将获得根本 JavaScript 对象权值的代码则放到 getPlainObjectValues() 中。看看改进后的版本吧。
- function getWeightByType(value) {
- const WEIGHT_NULL_UNDEFINED = 1;
- const WEIGHT_PRIMITIVE = 2;
推荐阅读
【51CTO.com快译】 软件开辟中的安然主题是多种多样的,安然术语对不合的团队具有不合的含义。为赞助澄清问题和避免安然问题的混淆,小编列出了A-Z最重要的安然相干词条供你参考。 A>>>详细阅读
本文标题:如何写出小而清晰的函数?(JS 版)
地址:http://www.17bianji.com/lsqh/36650.html
1/2 1