/fnv1a

FNV-1a non-cryptographic hash function

Primary LanguageJavaScriptMIT LicenseMIT

fnv1a Build Status

FNV-1a non-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('🦄🌈');
//=> 582881315

It returns a positive integer.

Related

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

License

MIT © Sindre Sorhus