如何实现js对象hashcode

JavaScript011

如何实现js对象hashcode,第1张

hashCode = function(str){

var hash = 0

if (str.length == 0) return hash

for (i = 0i <str.lengthi++) {

char = str.charCodeAt(i)

hash = ((hash<<5)-hash)+char

hash = hash &hash// Convert to 32bit integer

}

return hash

}

个人认为如果它已经被浏览器下载到缓存,而且尚未过期,那么浏览器会优先使用缓存的,虽然浏览器也会向服务器发送文件请求,但如果请求的文件自上次被下载以来没有变更过,实际是不会重复下载的,服务器会返回一个信号,通知浏览器直接使用缓存中的文件,即可起加速作用,又可节省带宽.

如果没有人为干预,浏览器和服务器通常可以自动完成上述过程,不用特别的设计.