请帮我翻译一小段JS代码,在线等

代码不多,麻烦帮我翻译详细一点,每句话的意思都说一下,特别是{hash+=(hash<<5)+str.charAt(i).charCodeAt();}returnhash... 代码不多,麻烦帮我翻译详细一点,每句话的意思都说一下,特别是{hash+=(hash<<5)+str.charAt(i).charCodeAt();}return hash&0x7fffffff 这几句重点翻译,谢了

function(str)
{var hash=5381;
for(var i=0,len=str.length;i<len;++i)
{hash+=(hash<<5)+str.charAt(i).charCodeAt();
}
return hash&0x7fffffff;};
展开
 我来答
cc...2@126.com
2010-05-16 · TA获得超过429个赞
知道小有建树答主
回答量:218
采纳率:100%
帮助的人:263万
展开全部
function(str)
{var hash=5381;//定义一个变量hash
for(var i=0,len=str.length;i<len;++i)
{hash+=(hash<<5)+str.charAt(i).charCodeAt();//hash<<5 将hash转换为二进制,然后左移5位,相当于hash乘于2的5次方.str.charAt(i)得到i位置的字符,.charCodeAt().将得到的字符转换为unicode编码.
}
return hash&0x7fffffff;}; //&表示按位与(hash和0x7ffffff转换为二进制)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式