首页 » 学习JavaScript数据结构与算法(第2版) » 学习JavaScript数据结构与算法(第2版)全文在线阅读

《学习JavaScript数据结构与算法(第2版)》4.3 用ECMAScript 6语法实现的Queue类

关灯直达底部

和第3章一样,我们也可以用ECMAScript 6语法编写Queue类。在这种方法中,我们要用一个WeakMap来保存私有属性items,并用外层函数(闭包)来封装Queue类。

代码如下:

let Queue2 = (function  {  const items = new WeakMap;  class Queue2 {    constructor  {      items.set(this, );    }    enqueue(element) {      let q = items.get(this);      q.push(element);    }    dequeue {      let q = items.get(this);      let r = q.shift;      return r;    }    //其他方法  }  return Queue2;});  

我们创建的两个Queue类你都可以用,测试的输出是一样的。