Skip to content

๐Ÿ”‘ Get the same key for the same sequence of values!

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
license-apache
MIT
license-mit
Notifications You must be signed in to change notification settings

TomerAberbach/keyalesce

Repository files navigation

keyalesce

Get the same key for the same sequence of values!

Features

  • Simple: a single function that takes an array and returns a key
  • Tiny: 580 bytes gzipped!
  • Performant: maintains a regularly pruned internal trie of the value sequences

When would I use this and how does it work?

Read my post!

Install

$ npm i keyalesce

Usage

import keyalesce from 'keyalesce'

const hangouts = new Set()

const createHangoutKey = (person1, person2) =>
  keyalesce([person1, person2].sort())
const hangOut = (person1, person2) =>
  hangouts.add(createHangoutKey(person1, person2))
const didTheyHangOut = (person1, person2) =>
  hangouts.has(createHangoutKey(person1, person2))

hangOut(`Tomer`, `Samuel`)
hangOut(`Tomer`, `Amanda`)

console.log(didTheyHangOut(`Tomer`, `Samuel`))
console.log(didTheyHangOut(`Samuel`, `Tomer`))
//=> true
//=> true

console.log(didTheyHangOut(`Tomer`, `Amanda`))
console.log(didTheyHangOut(`Amanda`, `Tomer`))
//=> true
//=> true

console.log(didTheyHangOut(`Samuel`, `Amanda`))
console.log(didTheyHangOut(`Amanda`, `Samuel`))
//=> false
//=> false

Contributing

Stars are always welcome!

For bugs and feature requests, please create an issue.

License

MIT ยฉ Tomer Aberbach
Apache 2.0 ยฉ Google

About

๐Ÿ”‘ Get the same key for the same sequence of values!

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
license-apache
MIT
license-mit

Stars

Watchers

Forks

Sponsor this project

 

Contributors 2

  •  
  •