@sindresorhus/fnv1a

FNV-1a non-cryptographic hash function

fnv1a

FNV-1anon-cryptographic hash function

FNV-1a has outstanding distribution and collisions are rare.

FNV hashes are designed to be fast while maintaining a low collision rate. The FNV speed allows one to quickly hash lots of data while maintaining a reasonable collision rate. The high dispersion of the FNV hashes makes them well suited for hashing nearly identical strings such as URLs, hostnames, filenames, text, IP addresses, etc.

Install

$ npm install @sindresorhus/fnv1a

Usage

const fnv1a = require('@sindresorhus/fnv1a');

fnv1a('🦄🌈');
//=> 2868248295

fnv1a.bigInt('🦄🌈', {size: 128});
//=> 13487074350300261116944693128525960095n

API

fnv1a(string)

Returns the hash as a 32-bit positive integer.

fnv1a.bigInt(string, options?)

Generate a larger hash using BigInt.

Returns the hash as a positive BigInt.

options

Type: object

size

Type: number
Values: 32 | 64 | 128 | 256 | 512 | 1024

The bit size of the hash.

Related

  • djb2a- DJB2a non-cryptographic hash function
  • sdbm- SDBM non-cryptographic hash function

Repository

sindresorhus/fnv1a


上一篇:@pollyjs/persister
下一篇:@pollyjs/utils

相关推荐

  • fnv1a

    Simple 32 bit FNV1a hash algorithm implementation. view on npm(http://img.shields.io/npm/v/fnv1a.sv...

    1 年前
  • @types/sindresorhus__fnv1a

    Stub TypeScript definitions entry for @sindresorhus/fnv1a, which provides its own types definitions ...

    24 天前
  • @sindresorhus/tsconfig

    Shared TypeScript config for my projects tsconfig Shared TypeScript config(https://www.typescrip...

    2 个月前
  • @sindresorhus/string-hash

    Get the hash of a string stringhash Build Status(https://travisci.org/sindresorhus/stringhash.svg?...

    24 天前
  • @sindresorhus/is

    Type check values is Build Status(https://travisci.org/sindresorhus/is.svg?branch=master)(https://...

    1 个月前
  • @sindresorhus/class-names

    Conditionally join CSS class names together Especially useful with React classnames Build Status(...

    18 天前

官方社区

扫码加入 JavaScript 社区