1.0.5 • Published 11 years ago

dequeue v1.0.5

Weekly downloads
7,539
License
-
Repository
github
Last release
11 years ago

A Simple Double Ended Queue Datastructure

I was using a javascript array as a FIFO. Somewhere between 100,000 and 200,000 entries the program performance went to hell (dev host is a MBP w/8GB RAM). 15 minutes later, I implemented a simple dequeue and my FIFO scales up to millions of entries.

It is a dropin replacement for javascript-arrays-as-fifo.

BTW, I use Felix's Node.js Style Guide; get over it ;)

So here is the API:

var Dequeue = require('dequeue')

//var fifo = []
var fifo = new Dequeue()

fifo.length === 0 //=> true

fifo.push(d1)
fifo.length === 1 //=> true

fifo.unshift(d2)

fifo.pop() === d1 //=> true

fifo.push(d3)

fifo.shift() === d2 //=> true

fifo.length === 1 //=> true; only d3 is in the dequeue