在阅读了 JavaScript 中的闭包之后,我仍然无法理解它们在哪里使用?如果没有闭包,那么这些事情将如何交替进行(如果可能的话)以及闭包的使用会简化什么。如果有人可以用 JavaScript 中的一些代码示例来解释这一点,那将会很有帮助。也欢迎任何指向解释这一点的文章的链接。我已经阅读了类似问题中提到的这篇文章。它用这样的代码解释
function makeSizer(size) {
return function() {
document.body.style.fontSize = size + 'px';
};
}
var size12 = makeSizer(12);
var size14 = makeSizer(14);
var size16 = makeSizer(16);
document.getElementById('size-12').onclick = size12;
document.getElementById('size-14').onclick = size14;
document.getElementById('size-16').onclick = size16;
但是,当我可以轻松创建这样的函数时,为什么我会这样做
function sizer(size) {
document.body.style.fontSize = size + 'px';
};
document.getElementById('size-12').onclick = function(){sizer(12)};
document.getElementById('size-14').onclick = function(){sizer(14)};
document.getElementById('size-16').onclick = function(){sizer(16)};