编写声音代码时,我应该使用全局对象还是将locals传递给函数,然后将函数本地对象返回给原始函数?
function func1(obj) {
..modify obj
return obj;
}
object = func1(object)
..do something with modified object
或
var object={..};
function func1() {
..modifiy object
}
function func2() {
func1();
..do something with modified object
}
func2();
第一个似乎更具可读性,第二个似乎更好的练习...
答案 0 :(得分:3)
JavaScript最佳做法是不使用全局变量,除非你绝对必须这样做。话虽如此,这取决于你的情况。 Douglas Crockford在这个主题上有两篇非常好的文章。第一个解释了为什么它们如此糟糕,第二个解释了必须使用全局变量的提示,