javascript实现获取字符串hash值


Posted in Javascript onMay 10, 2015

性能很高的计算字符串或文件hash值的函数,比md5速度快得多,自己一直用着,重复的几率为很底,一般的应用足够,

var I64BIT_TABLE =
 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-'.split('');
 
function hash(input){
 var hash = 5381;
 var i = input.length - 1;
 
 if(typeof input == 'string'){
  for (; i > -1; i--)
   hash += (hash << 5) + input.charCodeAt(i);
 }
 else{
  for (; i > -1; i--)
   hash += (hash << 5) + input[i];
 }
 var value = hash & 0x7FFFFFFF;
 
 var retValue = '';
 do{
  retValue += I64BIT_TABLE[value & 0x3F];
 }
 while(value >>= 6);
 
 return retValue;
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
网页开发中的容易忽略的问题 javascript HTML中的table
Apr 15 Javascript
js面向对象编程之如何实现方法重载
Jul 02 Javascript
node.js操作mysql(增删改查)
Jul 24 Javascript
详解AngularJS控制器的使用
Mar 09 Javascript
jquery树形菜单效果的简单实例
Jun 06 Javascript
jquery结合html实现中英文页面切换
Nov 29 Javascript
jquery仿京东侧边栏导航效果
Mar 02 Javascript
C#微信小程序服务端获取用户解密信息实例代码
Mar 10 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
Apr 19 Javascript
vuejs事件中心管理组件间的通信详解
Aug 09 Javascript
vue 路由页面之间实现用手指进行滑动的方法
Feb 23 Javascript
通过js实现压缩图片上传功能
Feb 25 Javascript
Javascript实现计算个人所得税
May 10 #Javascript
AngularJS基础知识笔记之表格
May 10 #Javascript
AngularJS基础知识笔记之过滤器
May 10 #Javascript
浅谈下拉菜单中的Option对象
May 10 #Javascript
AngularJS基础学习笔记之控制器
May 10 #Javascript
AngularJS基础学习笔记之指令
May 10 #Javascript
AngularJS基础学习笔记之表达式
May 10 #Javascript
You might like
简单采集了yahoo的一些数据
2007/02/14 PHP
php漏洞之跨网站请求伪造与防止伪造方法
2013/08/15 PHP
新手菜鸟必读:session与cookie的区别
2013/08/22 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
2019/05/13 PHP
Javascript跨域请求的4种解决方式
2013/03/17 Javascript
jquery显示隐藏input对象
2014/07/21 Javascript
JavaScript获取表单enctype属性的方法
2015/04/02 Javascript
jquery siblings获取同辈元素用法实例分析
2016/07/25 Javascript
js querySelector() 使用方法
2016/12/21 Javascript
angularJS模态框$modal实例代码
2017/05/27 Javascript
JavaScript基础进阶之数组方法总结(推荐)
2017/09/04 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
详解Vue打包优化之code spliting
2018/04/09 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
node.js中fs文件系统模块的使用方法实例详解
2020/02/13 Javascript
[05:24]TI9采访——教练
2019/08/24 DOTA
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
python脚本爬取字体文件的实现方法
2017/04/29 Python
Python使用requests及BeautifulSoup构建爬虫实例代码
2018/01/24 Python
关于阿里云oss获取sts凭证 app直传 python的实例
2019/08/20 Python
pycharm通过anaconda安装pyqt5的教程
2020/03/24 Python
Python @property及getter setter原理详解
2020/03/31 Python
Python响应对象text属性乱码解决方案
2020/03/31 Python
Python垃圾回收机制三种实现方法
2020/04/27 Python
Python pymsql模块的使用
2020/09/07 Python
Html5之svg可缩放矢量图形_动力节点Java学院整理
2017/07/17 HTML / CSS
GafasWorld哥伦比亚:网上购买眼镜
2017/11/28 全球购物
培训主管岗位职责
2014/02/01 职场文书
合作协议书范本
2014/04/17 职场文书
师德自我剖析材料范文
2014/10/06 职场文书
对领导班子的意见和建议
2015/06/08 职场文书
go:垃圾回收GC触发条件详解
2021/04/24 Golang
Python OpenCV超详细讲解读取图像视频和网络摄像头
2022/04/02 Python
Golang 遍历二叉树
2022/04/19 Golang
第四次工业革命,打工人与机器人的竞争
2022/04/21 数码科技