关闭。这个问题是 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/