我了解闭包在 JavaScript 中的工作原理,但我的问题是为什么要费尽心思创建闭包来保存变量?不能把变量设为全局吗?或者这会扰乱全局范围并使您的代码容易出错。
这是一个范围界定问题。全局变量就是这样:Global, toeveryone。使用闭包,可以更好地控制变量的范围(可见性),这意味着可以更好地控制可能的意外副作用。
http://en.wikipedia.org/wiki/Global_variable http://en.wikipedia.org/wiki/Global_variable
[全局] 通常被认为是不好的做法,正是因为它们的非局部性:全局
变量可以从任何地方修改(除非它们驻留在受保护的内存中),
程序的任何部分都可能依赖于它。因此,全局变量有一个
创建相互依赖并添加相互依赖的无限潜力
增加复杂性。看远距离动作 http://en.wikipedia.org/wiki/Action_at_a_distance_(computer_science)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)