Nodejs String Hash hashCode()

Here you can find the source of hashCode()

Method Source Code

var crypto = require('crypto');

function hashString(str) {
  return crypto.createHash('md5').update(str || '').digest('hex');
}

String.prototype.hashCode = 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);//from  w w  w .j  a  v  a2  s  .c o m
    hash  = ((hash << 5) - hash) + chr;
    hash |= 0; // Convert to 32bit integer
  }
  return hash;
};

module.exports = hashString;

Related

  1. hashCode()
    String.prototype.hashCode = function () {
        if (this.length == 0) return 0;
        return this.split("").reduce(function (a, b) {
            a = ((a << 5) - a) + b.charCodeAt(0);
            return a & a
        }, 0);
    };
    JSON.hashCode = function (obj) {
        return JSON.stringify(obj).hashCode();
    ...
    
  2. hashCode()
    String.prototype.hashCode = function(){
      var hash = 0;
      if(this.length == 0) return hash;
      for(i = 0; i < this.length; i++){
        char = this.charCodeAt(i);
        hash = ((hash<<5)-hash)+char;
        hash &= hash;
      return hash
    ...
    
  3. hashCode()
    String.prototype.hashCode = 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;
    };
    
  4. hashCode()
    String.prototype.hashCode = function () {
        var hash = 0;
        if (this.length == 0) return hash;
        for (i = 0; i < this.length; i++) {
            char = this.charCodeAt(i);
            hash = ((hash << 5) - hash) + char;
            hash = hash & hash; 
        return hash.toString();
    ...
    
  5. hashCode()
    String.prototype.hashCode = 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 Math.abs(hash); 
    ...
    
  6. hashCode()
    String.prototype.hashCode = 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;
    ...
    
  7. hashCode()
    String.prototype.hashCode = function(){
        var hash = 0;
        if (this.length === 0) return hash;
        if (Array.prototype.reduce){
          hash = this.split("").reduce(function(a,b){a=((a<<5)-a)+b.charCodeAt(0);return a&a},0); 
        else 
        for (var i = 0; i < this.length; i++) {
            hash  = ((hash<<5)-hash) + this.charCodeAt(i);
    ...
    
  8. hashCode()
    String.prototype.hashCode = 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;
    ...
    
  9. hashCode()
    'use strict';
    String.prototype.hashCode = 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;
    ...