Я не могу получить доступ к данным [i] в функции обратного вызова.
Это мой код:Объект Access Array в обратном вызове
var data = ['HI', 'Hi2'];
for(var i=0;i<data.length;i++){
console.log(data[i]); // Just works fine
//use mysql to query database
mysql.query('some sql stuff', function(err,result){
console.log(data); // Just works fine
console.log(data[i]); // Doesn't work
}
);
}
Я думаю, что 'i' не существует в вашем возврате' mysql.query'. Попробуйте 'console.log (i)' вместо 'console.log (data [i])' – driconmax
это не то, что я ищу. Я хочу, чтобы число i массива данных – vincent0110
Хотя, вероятно, это не относится к вашей проблеме, - что я не вижу очевидного решения - вы, вероятно, не видите 'var' перед объявлением переменной итерации (то есть,' var i = 0'). –