Complexity Score
Low
Open Issues
1
Dependent Projects
145
Weekly Downloadsglobal
4,990,042
Downloads
Readme
es6-weak-map
WeakMap collection as specified in ECMAScript6
Roughly inspired by Mark Miller’s and Kris Kowal’s WeakMap implementation.
Differences are:
- Assumes compliant ES5 environment (no weird ES3 workarounds or hacks)
- Well modularized CJS style
- Based on one solution.
Limitations
- Will fail on non extensible objects provided as keys
Installation
$ npm install es6-weak-map
To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: Browserify, Webmake or Webpack
Usage
If you want to make sure your environment implements WeakMap
, do:
require("es6-weak-map/implement");
If you’d like to use native version when it exists and fallback to polyfill if it doesn’t, but without implementing WeakMap
on global scope, do:
var WeakMap = require("es6-weak-map");
If you strictly want to use polyfill even if native WeakMap
exists, do:
var WeakMap = require("es6-weak-map/polyfill");
API
Best is to refer to specification. Still if you want quick look, follow example:
var WeakMap = require("es6-weak-map");
var map = new WeakMap();
var obj = {};
map.set(obj, "foo"); // map
map.get(obj); // 'foo'
map.has(obj); // true
map.delete(obj); // true
map.get(obj); // undefined
map.has(obj); // false
map.set(obj, "bar"); // map
map.has(obj); // false
Tests
$ npm test
Security contact information
To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.
Get professional support for d with a Tidelift subscriptionTidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.
Dependencies
CVE IssuesActive
0
Scorecards Score
3.00
Test Coverage
No Data
Follows Semver
Yes
Github Stars
29
Dependenciestotal
7
DependenciesOutdated
3
DependenciesDeprecated
0
Threat Modelling
No
Repo Audits
No
Learn how to distribute es6-weak-map in your own private NPM registry
13 Releases
NPM on Cloudsmith