Socket
Socket
Sign inDemoInstall

denque

Package Overview
Dependencies
0
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Install Socket

Protect your apps from supply chain attacks

Install

denque

The fastest javascript implementation of a double-ended queue. Used by the official Redis, MongoDB, MariaDB & MySQL libraries for Node.js and many other libraries. Maintains compatability with deque.

    2.1.0latest
    GitHub
    npm

Version published
Maintainers
1
Weekly downloads
8,382,012
increased by4.4%

Weekly downloads

Package description

What is denque?

The denque npm package is a fast double-ended queue implementation. It is optimized for performance and is useful for situations where you need a queue that allows adding or removing items from both ends.

What are denque's main functionalities?

Adding items

This demonstrates how to add items to the queue. 'push' adds an item to the end of the queue, while 'unshift' adds an item to the beginning.

const Denque = require('denque');
let myQueue = new Denque();
myQueue.push('item1');
myQueue.unshift('item0');

Removing items

This shows how to remove items from the queue. 'pop' removes an item from the end of the queue, and 'shift' removes an item from the beginning.

const removedLast = myQueue.pop();
const removedFirst = myQueue.shift();

Peeking at items

This code sample demonstrates how to peek at items in the queue without removing them. 'peekFront' looks at the first item, and 'peekBack' looks at the last item.

const firstItem = myQueue.peekFront();
const lastItem = myQueue.peekBack();

Other packages similar to denque

Changelog

Source

2.1.0

  • fix: issue where clear() is still keeping references to the elements (#47)
  • refactor: performance optimizations for growth and array copy (#43)
  • refactor: performance optimizations for toArray and fromArray (#46)
  • test: add additional benchmarks for queue growth and toArray (#45)

Readme

Source

Denque

NPM downloads NPM version Tests status Coverage License Follow on Twitter

Denque is a well tested, extremely fast and lightweight double-ended queue implementation with zero dependencies and includes TypeScript types.

Double-ended queues can also be used as a:

This implementation is currently the fastest available, even faster than double-ended-queue, see the benchmarks.

Every queue operation is done at a constant O(1) - including random access from .peekAt(index).

Works on all node versions >= v0.10

Quick Start

Install the package:

npm install denque

Create and consume a queue:

const Denque = require("denque");

const denque = new Denque([1,2,3,4]);
denque.shift(); // 1
denque.pop(); // 4

See the API reference documentation for more examples.


Who's using it?

... and many more.


License


Built and maintained by Invertase.

Keywords

FAQs

Last updated on 18 Jul 2022

Did you know?

Socket installs a GitHub app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc