Skip to content
ed9506bbaf
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
codeql-action/node_modules/map-age-cleaner/
codeql-action/node_modules/map-age-cleaner/

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
May 13, 2020 11:13
May 13, 2020 11:13
May 13, 2020 11:13

map-age-cleaner

Build Status codecov

Automatically cleanup expired items in a Map

Install

$ npm install map-age-cleaner

Usage

import mapAgeCleaner from '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