# just-throttle

> return a throttled function

Latest version **4.2.0** (published 2022-12-17) · MIT license · 0 weekly downloads

## Install

```sh
npm install just-throttle
pnpm add just-throttle
yarn add just-throttle
bun add just-throttle
```

## Health

**Score 30/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 4.2.0 |
| Published | 2022-12-17 |
| First published | 2017-05-29 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 7.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 6194 |
| Author | Angus Croll |
| Maintainers | angus-c |
| Keywords | function, throttle, no-dependencies, just |

## Links

- npm: https://www.npmjs.com/package/just-throttle
- Repository: https://github.com/angus-c/just
- Homepage: https://github.com/angus-c/just#readme
- Issues: https://github.com/angus-c/just/issues
- npm.io page: https://npm.io/package/just-throttle

## Recent versions

- 4.2.0 (latest) — 2022-12-17
- 4.1.1 — 2022-08-08
- 4.1.0 — 2022-08-07
- 4.0.1 — 2021-11-13
- 4.0.0 — 2021-11-09
- 3.1.1 — 2021-11-01
- 3.1.0 — 2021-10-31
- 3.0.0 — 2021-10-22
- 2.3.1 — 2021-06-05
- 2.3.0 — 2021-05-03
- 2.2.0 — 2021-04-30
- 2.1.1 — 2021-04-04
- 2.1.0 — 2021-04-04
- 2.0.0 — 2021-04-03
- 1.1.0 — 2018-08-09
- … 3 more at https://npm.io/package/just-throttle/versions

## README

<!-- DO NOT EDIT THIS FILE! THIS FILE WAS AUTOGENERATED BY TEMPLATE-MATE -->
<!-- SEE https://github.com/angus-c/just/blob/master/CONTRIBUTING.md#readme-template -->

## just-throttle

Part of a [library](https://anguscroll.com/just) of zero-dependency npm modules that do just do one thing.
Guilt-free utilities for every occasion.

[`🍦 Try it`](https://anguscroll.com/just/just-throttle)

```shell
npm install just-throttle
```
```shell
yarn add just-throttle
```

Return a throttled function

```js
import throttle from 'just-throttle';

// no matter how many times the function is called, only invoke once within the given interval
// options: 
// `leading`: invoke  before interval
// `trailing`: invoke afer interval

const fn1 = throttle(() => console.log('hello'), 500, {leading: true});
setInterval(fn1, 400);
// logs 'hello' immediately and then every 500ms

const fn2 = throttle(() => console.log('hello'), 500, {trailing: true});
setInterval(fn2, 400);
// logs 'hello' after 500ms and then every 500ms

const fn3 = throttle(() => console.log('hello'), 500, {leading: true, trailing: true});
// forces trailing to false

const fn4 = throttle(() => console.log('hello'), 500, { leading: false });
fn4();
fn4();
fn4();
fn4.cancel();
// function cancelled before 'hello' is logged

const fn5 = throttle(() => console.log("Hello"), 500);
fn5();
fn5();
fn5();
fn5.flush();
// immediately invoke the throttled function
```

---
_Source: https://npm.io/package/just-throttle · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
