在javascript中的双重链表

时间:2017-11-17 14:40:12

标签: javascript data-structures

我编写下面的代码只是为了创建双重LinkedList的乐趣,但它导致循环引用。如何停止循环引用?

const node = function (value) {
  this.value = value;
  this.next = null;
  this.prev = null;
}


let head = new node(null);
let current = head;


const newnode = new node('1');
newnode.prev = current;
current.next = newnode;
current = current.next;

在js中,它(代码上方)导致圆形嵌套作为其对象。我担心内存泄漏问题。任何更好的方法来实现双重。

1 个答案:

答案 0 :(得分:0)

tl; dr 你不能。

在双向链表中,元素保存对下一个元素和前一个元素的引用。

如果您从元素A引用了下一个元素B,并且从元素B引用了前一个元素A,那么根据定义是循环参考。

也许您正在寻找的是Singly linked list结构?