w3resource

JavaScript: Hash the input string into a whole number

JavaScript fundamental (ES6 Syntax): Exercise-148 with Solution

Hash String to Whole Number

Write a JavaScript program to hash the input string into a whole number.

  • Use String.prototype.split('') and Array.prototype.reduce() to create a hash of the input string, utilizing bit shifting.

Sample Solution:

JavaScript Code:

//#Source https://bit.ly/2neWfJ2

// Define the sdbm function
const sdbm = str => {
  let arr = str.split('');
  return arr.reduce(
    (hashCode, currentVal) =>
      (hashCode = currentVal.charCodeAt(0) + (hashCode << 6) + (hashCode << 16) - hashCode),
    0
  );
};

// Calculate the hash code for the string 'name'
console.log(sdbm('name')); 

Output:

-3521204949

Flowchart:

flowchart: Hash the input string into a whole number

Live Demo:

See the Pen javascript-basic-exercise-148-1 by w3resource (@w3resource) on CodePen.


For more Practice: Solve these Related Problems:

  • Write a JavaScript program that converts an input string to a whole number using a hashing algorithm.
  • Write a JavaScript function that computes a numerical hash from a string by iterating over its characters and summing their char codes.
  • Write a JavaScript program that generates a consistent hash number for a string and tests for collisions.

Go to:


PREV : Serialize Cookie Name-Value to Set-Cookie Header.
NEXT : Random Element from Array.

Improve this sample solution and post your code through Disqus

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.