UNPKG

693 BJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.BKDRHash = BKDRHash;
7exports.djb2hash = djb2hash;
8
9function BKDRHash(str) {
10 var seed = 131;
11 var seed2 = 137;
12 var hash = 0;
13 str += 'x';
14 var MAX_SAFE_INTEGER = Math.floor(9007199254740991 / seed2);
15
16 for (var i = 0; i < str.length; i++) {
17 if (hash > MAX_SAFE_INTEGER) {
18 hash = Math.floor(hash / seed2);
19 }
20
21 hash = hash * seed + str.charCodeAt(i);
22 }
23
24 return hash;
25}
26
27function djb2hash(str) {
28 str = str.toString();
29 var hash = 5381;
30 var i = str.length;
31
32 while (i) {
33 hash = hash * 33 ^ str.charCodeAt(--i);
34 }
35
36 return hash >>> 0;
37}
38//# sourceMappingURL=hash.js.map
\No newline at end of file