GoogleのAJAX言語APIを利用して、配列内の各値を変換しようとしています。
for(var n=0; n < mytext.length; n++) {
google.language.translate(mytext[n], originalLanguage, newLanguage, function(result){
if(!result.error){
document.getElementById("caption") += mytext[n]+" has been translated to "+result.translation;
}
})
}
これにより、配列全体が正しく変換されますが、google.language.translateによって呼び出されるsuccess関数では、nは常にmycaptions.lengthと等しくなります。これにより、mycaptions [n]が未定義として返されます(たとえば、「Holaに翻訳されました」)。これは何日も私を当惑させてきました(なぜあなたがループの終わりにいるかのようにコールバック関数内のnの値が常にあるのですか?)、そして私は答えが私がちょうどしているプログラミングの明らかなビットにあると推測しています取得できません。