以下功能范围的优缺点是什么:
全球职能/内联JS
<script> function funcA() { //do something } </script> <button id="buttA" onclick="funcA();">Click Me</button>
全局函数/非内联JS
<script> function funcA() { //do something } $(function() { $('#buttA').on('click', funcA); }); </script> <button id="buttA">Click Me</button>
非全局函数/非内联JS
<script> $(function() { $('#buttA').on('click', funcA); function funcA() { //do something } }); </script> <button id="buttA">Click Me</button>
哪种组合更好,为什么?
答案 0 :(得分:2)
我认为不使用全局变量的重要论点是网络协作的本质。如果您构建了一个站点范围的脚本,并且您有一个团队让我们说其他两个人在处理插件,那么您不希望协作者覆盖或调用您的变量。此外,让人们一直要求您向他们提供您的程序变量和函数列表,这将减慢一切。
/* Private namespace */
(function () {
var sum_1 = 10;
var sum_2 = 20;
var myFunction = function (x, y) {
return x * y;
};
myFunction(sum_1, sum_2);
})();