いくつかの要素(この場合は数値)をキューに追加したい場合、条件が真(この場合は "invert")の場合、数値を反転してキューに追加する。その後、私はstart()関数が1秒の遅れでコンソールに数字を表示するようにしたい。例えば、サンプルコードの数字は、1秒後に のように、 "1"、2秒後に "-2"、3秒後に "-3"、そして時間がqueue.length最後の数字が印刷されるはずです。この場合は、4秒後に「4」になります。誰も私にこの問題を解決できる関数を与えてもらえますか?ありがとう。遅延を含むループを持つキューをどのように通過するのですか? (JavaScriptの場合)
はvar queue = [];
var invert = false;
queue.push("1");
invert = true;
queue.push("2");
queue.push("3");
invert = false;
queue.push(4);
// queue should look like this
// queue = [ '1', '-2', '-3', '4' ]
var queueLenght = queue.length;
function start() {
for(var i = 0; i < queueLenght; i++){
console.log(queue.shift());
}
}
start();
をこの方法であなたは 'queue'オブジェクトを印刷しようとした場合内部に 'push'関数も定義されています。それは内部のサイクリングの振る舞いを変更します。例えば、その中の値だけを保持したい場合 – quirimmo