Nodejs String Hash getHashCode()

Here you can find the source of getHashCode()

Method Source Code

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; // Convert to 32bit integer
    }// w w  w  . jav a  2 s .co m
    return hash;
};

Related

  1. GetHashCode()
    String.prototype.GetHashCode = function () {
      var h = 0;
      for (var i = 0; i < this.length; i++) {
        h = ((h << 5) - h + this.charCodeAt(i)) & ~0;
      return h;
    };
    
  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));
    ...
    
  5. hash()
    String.prototype.hash = function() {
      var hash = 0;
      for (var i = 0; i < this.length; i++) {
        var c = this.charCodeAt(i);
        hash = (hash << 5) - hash + this.charCodeAt(i);
        hash = hash & hash;
      return hash;
    };
    ...