
Product
Introducing Reachability for PHP
Reachability analysis for PHP is now available in experimental, helping teams identify which vulnerabilities are actually exploitable.
priorityqueuejs
Advanced tools
A simple priority queue data structure for Node.js.
$ npm install priorityqueuejs
var PriorityQueue = require('priorityqueuejs');
var queue = new PriorityQueue(function(a, b) {
return a.cash - b.cash;
});
queue.enq({ cash: 250, name: 'Valentina' });
queue.enq({ cash: 300, name: 'Jano' });
queue.enq({ cash: 150, name: 'Fran' });
queue.size(); // 3
queue.peek(); // { cash: 300, name: 'Jano' }
queue.deq(); // { cash: 300, name: 'Jano' }
queue.size(); // 2
PriorityQueue()Initializes a new empty PriorityQueue wich uses .DEFAULT_COMPARATOR() as
the comparator function for its elements.
PriorityQueue(comparator)Initializes a new empty PriorityQueue with uses the given comparator(a, b)
function as the comparator for its elements.
The comparator function must return a positive number when a > b, 0 when
a == b and a negative number when a < b.
PriorityQueue.DEFAULT_COMPARATOR(a, b)Compares two Number or String objects.
PriorityQueue#deq()Dequeues the top element of the priority queue.
Throws an Error when the queue is empty.
PriorityQueue#enq(element)Enqueues the element at the priority queue and returns its new size.
PriorityQueue#forEach(fn)Executes fn on each element. Just be careful to not modify the priorities,
since the queue won't reorder itself.
PriorityQueue#isEmpty()Returns whether the priority queue is empty or not.
PriorityQueue#peek()Peeks at the top element of the priority queue.
Throws an Error when the queue is empty.
PriorityQueue#size()Returns the size of the priority queue.
$ npm install
$ npm test
MIT
The js-priority-queue package provides a similar priority queue implementation with additional features like custom comparators and support for different queue strategies. It is more flexible in terms of configuration compared to priorityqueuejs.
The heap package offers a binary heap implementation that can be used to create a priority queue. It provides efficient operations for insertion, deletion, and access to the minimum or maximum element, similar to priorityqueuejs.
The tinyqueue package is a minimal and efficient priority queue implementation. It is designed to be lightweight and fast, making it suitable for performance-critical applications. It offers similar functionality to priorityqueuejs but with a smaller footprint.
FAQs
a simple priority queue data structure
The npm package priorityqueuejs receives a total of 506,089 weekly downloads. As such, priorityqueuejs popularity was classified as popular.
We found that priorityqueuejs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Reachability analysis for PHP is now available in experimental, helping teams identify which vulnerabilities are actually exploitable.

Product
Export Socket alert data to your own cloud storage in JSON, CSV, or Parquet, with flexible snapshot or incremental delivery.

Research
/Security News
Bitwarden CLI 2026.4.0 was compromised in the Checkmarx supply chain campaign after attackers abused a GitHub Action in Bitwarden’s CI/CD pipeline.