关闭。这个问题是 opinion-based 。它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文来回答。

2年前关闭。



Improve this question




将函数存储在对象中而不是仅仅定义它们(因此是全局的)是否被认为是糟糕的编码实践?

考虑:

1.

Foo = {
    bar: function() {
        alert("baz");
    }
}
Foo.bar();
对比

2.
function bar() {
    alert("baz");
}
bar();
当然,第二个示例的代码可能会稍微少一些,但是当您开始获得大量函数时 - 它会变得困惑。
我发现它的方式,方式,更干净,例如,使用 Game.update() 而不是使用 updateGame();或类似。当深入时,比如 Game.notify.admin(id) 等等,它会给你更漂亮的代码。

将函数存储在对象中是否有任何缺点?

最佳答案

第一种方法是首选。通过这种方式,您可以明确定义函数的范围,而不是污染全局范围。使用第一种方法没有缺点。只有好处:-)

结论:始终使用第一种方法来定义函数。第二个就像 90 年代的 javascript,让我们让它安息在过去,并使用适当的范围。

关于Javascript - 在对象中存储函数 - 不好的做法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8902687/

10-14 15:27
查看更多