回覆列表
  • 1 # 已經過期了

    JS中的陣列提供了四個操作,以便讓我們實現佇列與堆疊!

    小理論:

    佇列:先進先出

    堆疊:後進先出

    實現佇列的方法:

    unshift: 在集合開頭新增一個或更多元素,並返回新的長度

    push:在集合中新增元素,並返回新的長度

    這是原來老趙寫的關於陣列佇列的程式碼,覺得有點問題,所以改了一下

    1 // Usage:裝載並執行函式

    2 // 佇列機制

    3 var Resource = (function () {

    4 var waitingCallbacks = [];

    5 var execute = function (cb) {

    6 setTimeout(function () {

    7 cb(function () {

    8 if (waitingCallbacks.length == 0) return;

    9 execute(waitingCallbacks.shift());

    10 });

    11 }, 0);

    12 };

    13 var register = function (cb) {

    14 if (waitingCallbacks.length == 0) {

    15 execute(cb);

    16 } else {

    17 waitingCallbacks.push(cb);

    18 }

    19 }

    20 return {

    21 register: register,

    22 state: 1

    23 }

    24 })();

    原來程式碼中是

    execute(waitingCallbacks.unshift());現在我改成了

  • 中秋節和大豐收的關聯?
  • 杜甫《絕句二首》的全詩是什麼?表達了什麼樣的詩意?