UNPKG

bbo

Version:

bbo is a utility library of zero dependencies for javascript.

32 lines (25 loc) 619 B
'use strict'; require('./get_tag.js'); require('./is_array.js'); require('./is_string.js'); require('./is_map.js'); require('./is_set.js'); var size = require('./size.js'); /** * string hash map * From https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript-jquery */ function hash(str) { var _str = String(str); var hash = 0; var i; var chr; if (size(_str) === 0) return hash; for (i = 0; i < _str.length; i++) { chr = _str.charCodeAt(i); hash = (hash << 5) - hash + chr; hash |= 0; // Convert to 32bit integer } return hash; } module.exports = hash;