文字列やファイルのハッシュ値を計算するための非常に高性能な関数です。私はいつもそれを使用しています。重複する可能性は非常に低いです。
var I64BIT_TABLE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-'.split(''); function hash(input){ var hash = 5381; var i = input.length - 1; if(typeof input == 'string'){ for (; i > -1; i--) hash += (hash << 5) + input.charCodeAt(i); } else{ for (; i > -1; i--) hash += (hash << 5) + input[i]; } var value = hash & 0x7FFFFFFF; var retValue = ''; do{ retValue += I64BIT_TABLE[value & 0x3F]; } while(value >>= 6); return retValue; }
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。