Nodejs String Hash toHashCodetoHashCode()

Here you can find the source of toHashCodetoHashCode()

Method Source Code

String.prototype.toHashCode = function toHashCode() {
  let hash = 0;/*from  w  ww .  j a  va2  s .  co  m*/

  for (let i = 0; i < this.length; i++) {
    // (hash << 5) - hash == hash * 31
    hash = ((hash << 5) - hash) + this.charCodeAt(i);
    hash |= 0; // convert to 32 bit integer
  }

  return hash;
}

Related

  1. parseHashtag()
    String.prototype.parseHashtag = function() {
      return this.replace(/[#]+[A-Za-z0-9-_]+/g, function(t) {
        var tag = t.replace("#","%23")
        return t.link("https://twitter.com/hashtag/"+tag+"?src=hash");
      });
    };
    
  2. parseHashtag()
    String.prototype.parseHashtag = function() {
      return this.replace(/[#]+[A-Za-z0-9-_]+/, function(t) {
        var tag = t.replace("#","%23")
        return t.link("http://search.twitter.com/search?q="+tag);
      });
    };
    
  3. parseHashtag()
    String.prototype.parseHashtag = function() {
        return this.replace(/[#]+^[ ,,]+/g, function(t) {
            var tag = t.replace("#","%23")
            return t.link("http://search.twitter.com/search?q="+tag);
        });
    };
    test = "Simon is writing a post about #??, #?? #and parsing hashtags as URLs";
    document.writeln(test.parseHashtag());
    
  4. stripHashtag()
    String.prototype.stripHashtag = function() {
        return this.replace(/[#]+[A-Za-z0-9-_]+/g, "");
    };
    
  5. toHash()
    String.prototype.toHash = function () {
      return this.split('').reduce((a, b) => {
        a = ((a << 5) - a) + b.charCodeAt(0)
        return a & a
      }, 0)