map-age-cleaner

Automatically cleanup expired items in a Map

Usage no npm install needed!

<script type="module">
  import mapAgeCleaner from 'https://cdn.skypack.dev/map-age-cleaner';
</script>

README

map-age-cleaner

CI codecov

Automatically cleanup expired items in a Map

Install

$ npm install map-age-cleaner

Usage

import mapAgeCleaner = require('map-age-cleaner');

const map = new Map([
    ['unicorn', {data: '🦄', maxAge: Date.now() + 1000}]
]);

mapAgeCleaner(map);

map.has('unicorn');
//=> true

// Wait for 1 second...

map.has('unicorn');
//=> false

Note: Items have to be ordered ascending based on the expiry property. This means that the item which will be expired first, should be in the first position of the Map.

API

mapAgeCleaner(map, [property])

Returns the Map instance.

map

Type: Map

Map instance which should be cleaned up.

property

Type: string
Default: maxAge

Name of the property which olds the expiry timestamp.

Related

  • expiry-map - A Map implementation with expirable items
  • expiry-set - A Set implementation with expirable keys
  • mem - Memoize functions

License

MIT © Sam Verschueren


Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.