Почему я не могу прокрутить цикл в JavaScript?

ZZ (работает как :wq)

О положении курсора. Я обнаружил, что курсор, который всегда остается в центре экрана, крутой

set scrolloff=9999
6
задан newacct 6 January 2013 в 08:43
поделиться

2 ответа

это обычная проблема при работе с замыканиями. попробуйте следующее:

for (var i = 0; i < 6; i++) {
    (function(i){
      dojo.connect(dijit.byId("project" + i).InputNode, "onChange",  function()   {makeMatch(i);});
    }(i));
}
11
ответ дан 8 December 2019 в 12:22
поделиться

i - локальная переменная внутри цикла for. Когда вызывается функция onChange, все 6 функций имеют ссылку на i, равное 6.

Это та же проблема, что и # 4 на странице Джона Скита C # Brainteaser

List<Printer> printers = new List<Printer>();
for (int i=0; i < 10; i++)
{
    printers.Add(delegate { Console.WriteLine(i); });
}

foreach (Printer printer in printers)
{
    printer();
}

, которая печатает все десятки

8
ответ дан 8 December 2019 в 12:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: