哪个更好:
var foo = 0,
fnFoo = function (bar)
{
"use strict";
// Do stuff
};
$(document).ready(function ()
{
"use strict";
fnFoo(foo);
});
要么
$(document).ready(function ()
{
"use strict";
var foo = 0,
fnFoo = function (bar)
{
"use strict";
// Do stuff
};
fnFoo(foo);
});
区别在于变量/函数声明的位置。在这种情况下,假设只有
ready
事件需要使用foo
和fnFoo
。 最佳答案
如果仅ready
事件需要它,则将其放在ready
中。这就是封装的重点。尽可能限制对变量的访问,以减少代码中的错误。如果您以后不小心意外声明了另一个foo
或fnFoo
,会发生什么情况?
不仅如此,它还使您的代码更易于理解。这意味着您确切知道每个变量的用途和位置。