ユーザーにメッセージを「入力」する関数を実装しようとしていました。「T」-待機-「Th」-待機-「Tha」のようなもの...この関数を思いつきましたが、待機してからすべての文字を一度に更新します(個別に更新するのではなく):
var tu = 'Thank you'
var timing = 1000
for (var i=0; i<=tu.length; i++) {
setTimeout(function (){input.text(tu.slice(0, i))}, timing)
timing = timing + 1000
}
しかし、私がこれをやったとき(笑わないでください)、うまくいきました..
setTimeout(function (){input.text('t')}, 400)
setTimeout(function (){input.text('th')}, 800)
setTimeout(function (){input.text('tha')}, 3000)
setTimeout(function (){input.text('than')}, 4000)
setTimeout(function (){input.text('thank')}, 5000)
setTimeout(function (){input.text('thank ')}, 6000)
setTimeout(function (){input.text('thank y')}, 7000)
setTimeout(function (){input.text('thank yo')}, 8000)
setTimeout(function (){input.text('thank you')}, 9000)
ループがカットアンドペーストの仕事とは異なる動作をしている理由を誰かが明らかにすることはできますか?