我目前正在从以下书籍“JavaScript:The Good Parts - O'Reilly Media”中学习 javascript,其中说:
重要的是要了解内部函数可以访问外部函数的实际变量而不是副本,以避免以下问题:
// BAD EXAMPLE
// Make a function that assigns event handler functions to an array of nodes the
wrong way.
// When you click on a node, an alert box is supposed to display the ordinal of the
node.
// But it always displays the number of nodes instead.
var add_the_handlers = function (nodes)
{
var i;
for (i = 0; i < nodes.length; i += 1)
{
nodes[i].onclick = function (e)
{
alert(i);
};
}
};
// END BAD EXAMPLE
问题:我不明白问题是什么,如果有人能给我一个带有数字和结果的清晰示例,将不胜感激。