Nodejs String Hash GetHashCode()

Here you can find the source of GetHashCode()

Method Source Code

String.prototype.GetHashCode = function () {
  var h = 0;/* w  ww .j  a  v  a  2  s. c  o m*/

  for (var i = 0; i < this.length; i++) {
    h = ((h << 5) - h + this.charCodeAt(i)) & ~0;
  }

  return h;
};

Related

  1. getHashCode()
    String.prototype.getHashCode = function() {
        var hash = 0;
        if (this.length == 0) return hash;
        for (var i = 0; i < this.length; i++) {
            hash = this.charCodeAt(i) + ((hash << 5) - hash);
            hash = hash & hash; 
        return hash;
    };
    ...
    
  2. getHashCode()
    String.prototype.getHashCode = function() {
        var hash = 0, i, chr, len;
        if (this.length == 0) return hash;
        for (i = 0, len = this.length; i < len; i++) {
            chr   = this.charCodeAt(i);
            hash  = ((hash << 5) - hash) + chr;
            hash |= 0; 
        return hash;
    ...
    
  3. getHashCode()
    String.prototype.getHashCode = function () {
        var hash = 0, i, chr, len;
        if (this.length === 0) {
            return hash;
        for (i = 0, len = this.length; i < len; i++) {
            chr = this.charCodeAt(i);
            hash = ((hash << 5) - hash) + chr;
            hash |= 0;
    ...
    
  4. getHashCode(caseSensitive)
    String.prototype.getHashCode = function (caseSensitive) {
        var str = this;
        if (!caseSensitive) {
            str = str.toLowerCase();
        var hash = 1315423911, i, ch;
        for (i = str.length - 1; i >= 0; i--) {
            ch = str.charCodeAt(i);
            hash ^= ((hash << 5) + ch + (hash >> 2));
    ...