Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么这个循环只按一个按钮?_Javascript_Closures - Fatal编程技术网

Javascript 为什么这个循环只按一个按钮?

Javascript 为什么这个循环只按一个按钮?,javascript,closures,Javascript,Closures,为什么这个按钮只有一个按钮被按下?这个.element也有同样的问题——它只添加了最后一个按钮 this.initialize = function(buttonsCount) { for (var i = 0; i < buttonsCount; i++) { var btn = new ToolBarButton("btn" + i, null); this.buttons.push(btn); this.element.insertBefore(btn.e

为什么这个按钮只有一个按钮被按下?
这个.element也有同样的问题
——它只添加了最后一个按钮

this.initialize = function(buttonsCount) {
  for (var i = 0; i < buttonsCount; i++) {
    var btn = new ToolBarButton("btn" + i, null);
    this.buttons.push(btn);
    this.element.insertBefore(btn.element, this.element.lastChild);
  }
};
this.initialize=函数(按钮计数){
对于(变量i=0;i
您已经在问题中添加了
闭包
标记,那么为什么不学习闭包是如何工作的呢?提示:您可以将代码包装在IIFE中,并将
i
作为参数值传递给该函数。我已经读过很多次了。我了解示例,但不了解一般原则,并且示例从来都不是我的项目所需要的。我认为我的问题是“我不明白代码是如何执行的”。我来自c#背景,已经讨厌javascript了。。。不管我读了多少书,都没用。我缺少比闭包更基本的smth。