コールバック関数でdata [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
}
);
}
私は 'mysql.query'リターンの内側に' i'が存在しないと思います。 'console.log(data [i])'の代わりに 'console.log(i)'を試してください。 – driconmax
は私が探しているものではありません。私はデータ配列の番号iを求めています – vincent0110
明らかな解決策が見当たりませんが、おそらくあなたの問題には関係しませんが、反復変数宣言の前に 'var'がない可能性があります(つまり' var i = 0 ')。 –