weak-value
v1.0.2
Published
A Map with weakly referenced values, instead of keys
Downloads
186
Maintainers
Readme
WeakValue
A Map with weakly referenced values, instead of keys, with an optional onValueCollected callback to pass aslong.
In Node.js, it requires V8 release v8.4 or greater.
import WeakValue from 'weak-value';
// const WeakValue = require('weak-value');
const wv = new WeakValue;
(() => {
const value = {};
wv.set('any-key', value, /* optional */ (key, map) => {
// will log "any-key value collected" once GC kicks in
console.log(key, 'value collected');
console.log(map === wv); // true
});
})();
Please note that explicit wv.delete(key)
will NOT invoke onValueCollected, as deleting a key does not mean its referenced value has been collected.