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.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to serialize a cookie name-value pair into a Set-Cookie header string.
Next: Write a JavaScript program to get a random element from an array.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/javascript-exercises/fundamental/javascript-fundamental-exercise-148.php