1. TOPTOP
  2. Webサービス
  3. JavaScript

イヌでもわかるJavaScript講座 forも使わず繰り返し表示とは?

|

さて。先日

イヌでもわかるJavaScript講座 プログラムをすべてコメントアウトしたら…
という記事を書きました。そこで書き忘れていたことなぞ。

ここをクリックすると、「いらっしゃいませ こんにちは!」という文字が一文字ずつ表示され、最後までいったら消えて、また最初から文字が表示されます。

参考サイト
イヌでもわかるJavaScript講座 Step.53 – タイピング表示

しかし、どうしても納得できないことがあります。
仕様通りに動いているので、納得できないのは私の理解不足というだけなんですが…。

謎な点 「繰り返し構文」を使わずになぜ表示の動作が繰り返されるのか

この動作をスローモーションで分解すると文字が次のように表示されます。

1回目 _
2回目 い_
3回目 いら_
4回目 いらっ_
5回目 いらっし_
6回目 いらっしゃ_

JavaScriptのコードは次の通りです。

myMsg = "いらっしゃいませ こんにちは!";
myCnt = 0;

function myFunc(){
     myMess = myMsg.substring( 0 , myCnt ) + "_";
     myCnt = ( myCnt == myMsg.length ) ? 0 : myCnt+1;
     document.getElementById( "typing" ).innerHTML = myMess;
}

setInterval( "myFunc()", 200 );

1回目の “_”が表示されるのは分かるんですが、
2回目の”い_”、3回目の”いら_”と言う具合に繰り返し表示されるのが、よく分かりません。なぜだ?