Skip to main content
Home

Built and signed on GitHub Actions

Utility functions

This package works with Cloudflare Workers, Node.js, Deno, Bun, Browsers
This package works with Cloudflare Workers
This package works with Node.js
This package works with Deno
This package works with Bun
This package works with Browsers
JSR Score
100%
Published
53 minutes ago (5.0.0)

Utility functions for common tasks such as sleep, debounce, throttle, memoize, and error handling (tryCatch).

Examples

Example 1

import { sleep, tryCatch, isFunction, isEmpty } from "@edouardmisset/function";
import { assertEquals } from "@std/assert";

//  sleep function (using a shorter duration for testing)
const start = Date.now();
await sleep(10);
const elapsed = Date.now() - start;
assertEquals(elapsed >= 10, true);

//  tryCatch function with valid JSON
const validResult = tryCatch(() => JSON.parse('{"valid": true}'));
assertEquals(validResult.error, undefined);
assertEquals(validResult.data?.valid, true);

//  tryCatch function with invalid JSON
const invalidResult = tryCatch(() => JSON.parse('invalid json'));
assertEquals(invalidResult.data, undefined);
assertEquals(invalidResult.error instanceof SyntaxError, true);

//  isFunction
assertEquals(isFunction(() => {}), true);
assertEquals(isFunction("not a function"), false);

//  isEmpty
assertEquals(isEmpty(""), true);
assertEquals(isEmpty("hello"), false);
Built and signed on
GitHub Actions

New Ticket: Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";
or

Import directly with a jsr specifier

import * as function from "jsr:@edouardmisset/function";

Add Package

pnpm i jsr:@edouardmisset/function
or (using pnpm 10.8 or older)
pnpm dlx jsr add @edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";

Add Package

yarn add jsr:@edouardmisset/function
or (using Yarn 4.8 or older)
yarn dlx jsr add @edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";

Add Package

vlt install jsr:@edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";

Add Package

npx jsr add @edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";

Add Package

bunx jsr add @edouardmisset/function

Import symbol

import * as function from "@edouardmisset/function";