Skip to content


Subversion checkout URL

You can clone with
Download ZIP
This package contains JavaScript implementations of common data structures with idiomatic interfaces.

Merge pull request #124 from marchant/faster-dict

Speed improvements for Dict, significantly reducing garbage collection b...
latest commit 9540aeb39b
@marchant marchant authored
Failed to load latest commit information.
bench Fix wrong hrtime handling
demo Change 'items' to 'entries'
listen fix typo & remove dead code in PropertyChanges
spec Implement deleteAll
.editorconfig Create .editorconfig
.gitignore Adding .idea to .gitignore
.npmignore Ignore more.
.travis.yml Disable Node.js v0.8 integration tests update version from 1.2.2 to 1.2.3 and Redirect users to for documentation Fix copyright in license Style fixes and notes
checklist.csv Implement deleteAll Version 0.1.1
collections.js Factor WeakMap dependency out
collections.min.js Version 0.1.1
deque.js Fix redundant dependency on generic order in Deque
dict.js consolidated logic on set
fast-map.js Hack around MontageJS serialization
fast-set.js Fix for FastSet always returning true on .has(x) when x is a single l…
generic-collection.js Add a singleton, frozen empty array to use in place of [] which creat…
generic-map.js Add toJSON method to collections
generic-order.js Add toJSON method to collections
generic-set.js Implement deleteAll
heap.js Add toJSON method to collections
iterator.js You may call "iterator" to call "iterate".
lfu-map.js Add LfuMap
lfu-set.js Update change log and checklist for next minor
list.js Revert support for wildcard find{,Last} in List
lru-map.js Hack around MontageJS serialization
lru-set.js Merge pull request #52 from kriskowal/rename-max-length-to-capacity
map.js Hack around MontageJS serialization
minify Adjust change listener interface
multi-map.js Multi-map should provide key name to bucket maker
package.json update version from 1.2.2 to 1.2.3 and
set.js Reverted the changes done for adding delete property to set module
shim-array.js Only patch Array clear if it doesn't exist
shim-function.js Function by and get
shim-object.js Improve addEach
shim-regexp.js Shim RegExp
shim.js Shim RegExp
sorted-array-map.js Flag SortedArrayMap as isSorted
sorted-array-set.js Upgrade Queue to Deque
sorted-array.js Fix collection length in SortedArray.swap
sorted-map.js Hack around MontageJS serialization
sorted-set.js Update find methods to account for wrong assumption about splay
tree-log.js Strict mode
weak-map.js Factor WeakMap dependency out

Build Status


This package contains JavaScript implementations of common data structures with idiomatic iterfaces, including extensions for Array and Object.

You can use these Node Packaged Modules with Node.js, Browserify, Mr, or any compatible CommonJS module loader. Using a module loader or bundler when using Collections in web browsers has the advantage of only incorporating the modules you need. However, you can just embed <script src="collections/collections.min.js"> and all of the collections will be introduced as globals. :warning: require("collections") is not supported.

npm install collections --save

Documentation can be found at which in turn can be updated at


Something went wrong with that request. Please try again.