We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent af0fe3a commit cc3cdaeCopy full SHA for cc3cdae
chapter04/01-Queue2.js
@@ -0,0 +1,51 @@
1
+let Queue2 = (function () {
2
+
3
+ const items = new WeakMap();
4
5
+ class Queue2 {
6
7
+ constructor () {
8
+ items.set(this, []);
9
+ }
10
11
+ enqueue(element) {
12
+ let q = items.get(this);
13
+ q.push(element);
14
+ items.set(this, q)
15
16
17
+ dequeue() {
18
19
+ let r = q.shift();
20
+ items.set(this, q);
21
+ return r;
22
23
24
+ front() {
25
26
+ return q[0];
27
28
29
+ isEmpty(){
30
+ return items.get(this).length == 0;
31
32
33
+ size(){
34
35
+ return q.length;
36
37
38
+ clear(){
39
40
41
42
+ print(){
43
+ console.log(this.toString());
44
45
46
+ toString(){
47
+ return items.get(this).toString();
48
49
50
+ return Queue2;
51
+})();
0 commit comments