保存/恢复成员变量中的指针

时间:2014-07-11 20:47:28

标签: javascript pointers web-worker

我有一个类似的数据结构(这是一个粗略的简化,它不能通过将元素放在链表集合中来解决):

null <-- [1] <==> [2] <==> [3] <==> [4] <==> [5] --> null

我需要在web worker postMessage()中传递子列表:

null <-- [2] <==> [3] <==> [4] --> null

所以这样做的简单方法是:

  1. 保存2.prev,4.next
  2. 设置2.prev&amp; 4.next为null
  3. postMessage()截断列表。
  4. 设置2.prev&amp; 4.前一个值的下一个。
  5. 我可以使用两个列表listPrevlistNext执行此操作。将密钥设置为变量2&amp; 4,值是指针值。但是,实际上在不同的对象类型中有6种不同的prev / next类型成员变量。所以......

    如果这是C ++,那么我可以将prev和next指针的地址存储为键,并有一个指针地址和值的列表来设置它们。在javascript中有什么类似的东西吗?

1 个答案:

答案 0 :(得分:0)

假设您已经将其抽象为LinkedList之类的东西,我会用类似LinkedSublist的东西来装饰它,它本身会存储第一个和最后一个节点的引用,因此您可以使用它。不要破坏性地改变原始清单。