我得弄清楚我在新工作上得到的代码库。我在这里可以看到很多反模式,其中之一就是“上帝对象”,它包含了很多东西,不同的对象一直在访问它。这是一个不同的问题,我在这里的问题是,一些对象使用'.‘访问其成员,而另一些对象则通过[]访问它的成员,例如
GOD.meow.woof()
在一个源文件中
GOD['meow']["woof"]()
在另一个。
我对javascript的了解非常深,以至于我意识到两者之间没有任何区别。或者有?git blame
告诉我,这两个源都是由同一个人编写的,所以它与样式无关。一方面,你能从一个毫不迟疑地创造上帝物体的人身上得到什么,另一方面,也许他在匆忙中,最终没有时间偿还这个技术债,我们永远不会知道。
是否有可能使用后一种访问方法在任何方面都更安全?欢迎你们的意见,伙计们,在我启动我的内心重建忍者之前。
发布于 2016-04-11 07:19:18
一个常见的原因是:有一个扫雷器需要第二种形式才能知道它必须保留"meow"
和"woof"
的名称。这对于谷歌关闭来说尤其方便。
除此之外,没有理由,正如您在文档中已经看到的那样(使用特殊字符和动态字符串不适用于您的情况)。
https://stackoverflow.com/questions/36542005
复制相似问题