我正在處理一個非常複雜的工作流程,我想將其表示爲JavaScript數據結構。流程本質上是一組問題和答案,其中一個問題的答案影響下一個問題。以下是流動可能看起來像一個簡單的例子:我將如何將這個工作流程表示爲JavaScript數據結構?
我不知道如何將這種流量轉換成一個JavaScript對象,很容易的工作。理想情況下,我希望有一個容易循環/遞歸的結構,而且這個結構很容易修改,所以如果有人想在稍後改變流程,他們可以做到這一點,而無需做太多的改變。
我覺得這是某種奇怪的樹結構,其中節點可以有多個父節點。 (我不知道這樣的數據結構被稱爲什麼)。
無論如何,我唯一的想法是爲每個節點分配一個ID,然後創建一個如下節點對象的數組:
{
id: 5,
parents: [2, 3],
children: [6, 7, 8]
}
但是,這似乎真的僵化,當涉及到循環通過節點對象(我可能是錯誤的,雖然)。
如果任何人都可以請提供一些關於我應該研究的數據結構的指導和指導,以及如何用JavaScript實現它們,我會非常感激。
非常感謝您提前。
這看起來像一個有向圖,或向圖。 – glomad
謝謝,ithcy。我會研究這兩個並報告回來。 – HartleySan
這可能值得查找:http://stackoverflow.com/a/6894080/2282538 – Tyler