我使用node.js來調用redis來獲取一些數據。然後數據需要排序到數組 - 不是一個昂貴的過程,但我需要一個函數在排序完成後立即執行。有沒有更好的方式在node.js中做到這一點?
如果我在排序代碼後面寫入函數,它將在數組排序之前觸發。所以我看到了一些解決這個問題的方法:
1)爲()循環寫下一個開始的地方,當前一個在最後一次迭代時;在VERY結束時,使用異步方法確保在所有循環完成後運行。
2)使用setTimeout()。我對這樣做感到不安,因爲它可能取決於需要處理的陣列的大小,它可能太早或太晚會奇蹟般地啓動。
有沒有比嵌套for循環更好的方法呢?
如何異步排序? – 2012-07-17 18:16:46
你用什麼來排列數組?你能不能將一個onComplete函數傳遞給該函數,以便在排序完成後觸發它? – 2012-07-17 18:18:07
在JavaScript中對常規數組進行排序是同步的,因此在sort之後調用的函數不會將數組視爲排序是不可能的。可以舉一些例子嗎? – 2012-07-18 08:20:35