Как ссылаться на правильное значение `i` в обратном вызове в цикле?

У меня есть этот код:

for (var i = 0; i < result.length; i++) {
    // call a function that open a new "thread"
    myObject.geocode({ param1: "param" }, function(results, status) {
        alert(result.title[i]);
    });                                             
}

.geocode Функция (это не мое, поэтому я не могу редактировать) открывает новую «ветку» выполнения.

Когда я пытаюсь напечатать заголовок на каждом шаге, я всегда получаю последнее возможное значениеi.

Как я могу сохранить ссылку на правильное значениеi для каждой итерации?

Ответы на вопрос(2)

Ваш ответ на вопрос