関数呼び出しのエントリのため、スクリプトで 'Hello'、次に 'Good Bye'を出力する必要があります。しかし、一度だけ印刷します。どうして? ここでは何が間違っています。引数を使用した再帰メソッド
PD:これで動作しません。それはそれは(終わることはありません)無限ループであった最初、私は再帰呼び出しライン
<html>
<head>
</head>
<body>
<script type="text/javascript">
function writing(i,first,second) {
len=arguments.length;
if (i<=len) {
current=arguments[i];
c=0;
inter=setInterval(function() {
if (c>=current.length) {
clearInterval(inter);
} else {
field=document.getElementById('div1');
field.innerHTML+=current[c];
c+=1;
}
},200);
}
i<len?writing(i+1,first,second):writing(i=0,first,second);
}
writing(1,'Hello','Good bye');
</script>
<div id="div1"></div>
</body>
聖行方不明 'var'宣言、バットマン! 'var'(または' let'または 'const')キーワードを省略すると、変数がグローバルスコープ(この場合は' window')で宣言され、あらゆる種類の潜在的な命名汚染とクロストークが発生します。あなたがそのようなことをするのを助けるためにリンターを使用する習慣に入るのがベストです。 –
私は問題を減らしました。これで 'Undefined'、' Hello'、 'Goodbye'というランダムなメッセージが表示されます。キャラクター別に実行するsetInterval時間の無関係なぜですか? – gAbad