欢迎使用 Typecho

5天前 28

如果您看到这篇文章,表示您的 网站 已经安装成功.

/**
 * 字符串稳定哈希函数:同一字符串永远生成同一哈希值
 * @param {string} str 要哈希的字符串
 * @returns {number} 绝对值哈希值
 */
function getStringHash(str) {
    let hash = 0;
    if (!str) return 0;
    for (let i = 0; i < str.length; i++) {
        const charCode = str.charCodeAt(i);
        hash = ((hash << 5) - hash) + charCode;
        hash = hash & hash; // 强制转为32位有符号整数
    }
    return Math.abs(hash);
}