3

ユーザーに食料品リストにアイテムを追加するように求める小さなプログラムを作成しようとしています。

再帰を使用してループすることについて読みました。while ループがおそらくこのタスクに適していることは理解していますが、while ループで同じ問題に遭遇したため、再帰を試してみました。自分が何をしているのかを知っているように聞こえます...「ええ、ユーザーからの検証を求めながら、再帰を使用して配列を列挙しました... hur hur hur」...しかし、脱線します。

コードは次のとおりです。

function addToArray() {
          var array = [];
          array.push(prompt("Add items to array or 'q' to stop"));
          if (array.pop() == 'q') {
              document.write(array)
          }
          else {
              addToArray();
          }
      }
      addToArray();

お気づきかもしれませんが、想定どおりにループしますが、配列に項目を追加していません。私もこの手法を試しましたarray[i] = iが、役に立たず、配列は空のままです。また、引数のない関数を使用すると、再帰があまり発生しないのはなぜですか? 条件文のせいですか?

私が間違っていることを知っている場合は、単にぼんやりさせるのではなく、正しい答えをほのめかすようにしてください. その「あはは」の瞬間が欲しいです。これはすべて、私たちがもう少しよく学ぶのに役立つと思います。

みんなありがとう。(そしてギャル)

4

3 に答える 3