JavaScript闭包如何工作?
您将如何向了解其闭包概念(例如函数,变量等)的人解释JavaScript闭包,但却不了解闭包本身? 我已经在Wikipedia上看到 了Scheme示例 ,但是不幸的是它没有帮助。 #1楼 我知道已经有很多解决方案,但是我猜想这个小而简单的脚本可以用来说明这个概念: // makeSequencer will return a "sequencer" function var makeSequencer = function() { var _count = 0; // not accessible outside this function var sequencer = function () { return _count++; } return sequencer; } var fnext = makeSequencer(); var v0 = fnext(); // v0 = 0; var v1 = fnext(); // v1 = 1; var vz = fnext._count // vz = undefined #2楼 面向初学者的JavaScript关闭 莫里斯在2006年2月2日星期二提交。 从此开始由社区编辑。 关闭不是魔术 本页说明了闭包,以便程序员可以使用有效的JavaScript代码来理解闭包。 它不适用于专家或功能性程序员。 一旦核心概念浮出水面,关闭