Skip to content

Instantly share code, notes, and snippets.

@steida
Created November 25, 2017 02:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save steida/12b09fa7aad43d1de61dcd1406036229 to your computer and use it in GitHub Desktop.
Save steida/12b09fa7aad43d1de61dcd1406036229 to your computer and use it in GitHub Desktop.
Get React key for immutable object without memory leaks.
export const getWeakKey = (() => {
const map = new WeakMap();
let idx = 0;
return element => {
if (map.has(element)) return map.get(element);
idx++;
map.set(element, idx.toString());
return idx;
};
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment