文字列の配列をループして3秒の遅延後にそれぞれを表示することで、JavaScriptでタイミング関数をテストしようとしていますが、関数を呼び出すと、最初の文字列の最初の文字だけを取得するという奇妙なパターンが実行されます。 2番目の文字列の2番目の文字など...配列の4番目の項目に4番目の文字がない場合、未定義で出力されます。助けてください。ありがとう
function myFunc () {
setTimeout(function () {
var contacts = {
addressBook : [
{
'name' : 'Jane',
'email' : 'JaneDoegmail.com'
},
{
'name' : 'Meggie',
'email' : 'meggiegmail.com'
},
{
'name' : 'John',
'email' : 'johnDoegmail.com'
},
{
'name' : 'Paul',
'email' : 'paulgmail.com'
},
{
'name' : 'Bo',
'email' : 'bogmail.com'
}
]
};
var object = contacts.addressBook;
var i;
for (var i = 0; i < object.length; i++) {
var item = object[i];
var name = item.name;
var email = item.email;
document.write(name[i]);
};
if (i < 10) {
myFunc();
};
}, 3000)
}
myFunc();