用js写哈希函数
哈希函数(Hash Function)是一种将任意长度的消息压缩成指定长度的固定哈希值的函数。下面是使用JavaScript编写的简单哈希函数:
function hash(str) {
let hash = 0;
if (str.length == 0) {
return hash;
}
for (let i = 0; i < str.length; i++) {
let char = str.charCodeAt(i);
hash = ((hash << 5) - hash) + char;
hash = hash & hash; // Convert to 32bit integer
}
return hash;
}
这个哈希函数使用了字符串的每个字符的Unicode编码来计算哈希值。它将哈希值初始化为0,然后对于每个字符,它将哈希值左移5位,再减去哈希值本身,再加上字符的编码。最后,它将哈希值转换为32位整数,以确保哈希值具有固定长度。
这个哈希函数并不是最安全或最优秀的哈希函数,但它是一个简单的示例,可以用来演示哈希函数的基本工作原理。
原文地址: https://www.cveoy.top/t/topic/bUkO 著作权归作者所有。请勿转载和采集!