atnhsndkgbnlsdgjbnlsdkgbn

[![All dependencies](https://img.shields.io/librariesio/release/npm/temp-object/1.1.1?style=flat-square "All dependencies of temp-object@1.1.1")](https://libraries.io/npm/temp-object/1.1.1) [![Reported vulnerabilities](https://img.shields.io/snyk/vulnerab

Usage no npm install needed!

<script type="module">
  import atnhsndkgbnlsdgjbnlsdkgbn from 'https://cdn.skypack.dev/atnhsndkgbnlsdgjbnlsdkgbn';
</script>

README

All dependencies Reported vulnerabilities Commits NPM-version Total downloads Developed by
Publish size Install size Minified size Minified + gzipped size

temp-object@1.1.1

Helps you to automatically clean unused (only) values from JavaScript object in amount of time.

Installation

temp-object is available via NPM:

$ npm i temp-object@1.1.1

Usage

Synopsis

| Parameter | Type | Name | Required | Default value | Description |-----------|--------|----------------|----------|--------------------|- | 1st | number | TTL | false | 86400000 (1 day) | Time to live (in milliseconds) | 2nd | object | Initial object | false | {} | Object with own initial properties

Example

import TempObject from 'temp-object';

const wait = (ms: number) => new Promise<void>(res => setTimeout(res, ms));

interface MyObj {
  firstKey: number;
  secondKey: number;
}

(async () => {
  const obj = new TempObject(1000, { firstKey: 1 } as MyObj);  // TTL 1 second
  obj.secondKey = 2;
  console.log(obj);             // { firstKey: 1, secondKey: 2 }

  for(let i = 0; i < 3; i++) {
    await wait(800);
    console.log(obj.firstKey);  // Three times: 1
  }
  console.log(obj);             // { firstKey: 1 }  // `secondKey` was expired

  await wait(1000);
  console.log(obj.firstKey);    // undefined
  console.log(obj);             // {}
})();

Testing

Manually tested by developer. Automated tests are not provided.


Your improve suggestions and bug reports are welcome any time.