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 相关文章推荐
通过JQuery实现win8一样酷炫的动态磁贴效果(示例代码)
Jul 13 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
Sep 04 Javascript
常用js,css文件统一加载方法(推荐) 并在加载之后调用回调函数
Sep 23 Javascript
jquery把int类型转换成字符串类型的方法
Oct 07 Javascript
jQuery ajaxForm()的应用
Oct 14 Javascript
Bootstrap3 图片(响应式图片&amp;图片形状)
Jan 04 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
Jun 29 Javascript
Three.js实现浏览器变动时进行自适应的方法
Sep 26 Javascript
浅谈JsonObject中的key-value数据解析排序问题
Dec 06 Javascript
详解如何在vue-cli中使用vuex
Aug 07 Javascript
关于vue-cli 3配置打包优化要点(推荐)
Apr 22 Javascript
基于vue--key值的特殊用处详解
Jul 31 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
php中计算时间差的几种方法
2009/12/31 PHP
PHP 读取Postgresql中的数组
2013/04/14 PHP
php获取文件夹路径内的图片以及分页显示示例
2014/03/11 PHP
ThinkPHP实现跨模块调用操作方法概述
2014/06/20 PHP
php+html5使用FormData对象提交表单及上传图片的方法
2015/02/11 PHP
PHP实现的折半查找算法示例
2017/12/19 PHP
laravel框架模型、视图与控制器简单操作示例
2019/10/10 PHP
解析arp病毒背后利用的Javascript技术附解密方法
2007/08/06 Javascript
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
JS自动适应的图片弹窗实例
2013/06/29 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
jQuery实现表格颜色交替显示的方法
2015/03/09 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
Javascript的表单与验证-非空验证
2016/03/18 Javascript
Windows环境下npm install 报错: operation not permitted, rename的解决方法
2016/09/26 Javascript
微信小程序 wxapp内容组件 text详细介绍
2016/10/31 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
2017/10/25 Javascript
jQuery 导航自动跟随滚动的实现代码
2018/05/30 jQuery
js中实例与对象的区别讲解
2019/01/21 Javascript
Vue使用mixin分发组件的可复用功能
2019/09/01 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
python的多重继承的理解
2017/08/06 Python
详解python OpenCV学习笔记之直方图均衡化
2018/02/08 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
2019/03/14 Python
Python箱型图处理离群点的例子
2019/12/09 Python
Python对wav文件的重采样实例
2020/02/25 Python
如何在python中执行另一个py文件
2020/04/30 Python
基于SQLAlchemy实现操作MySQL并执行原生sql语句
2020/06/10 Python
Python数据相关系数矩阵和热力图轻松实现教程
2020/06/16 Python
Tory Burch美国官方网站:美国时尚生活品牌
2016/08/01 全球购物
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
SmartBuyGlasses荷兰:购买太阳镜和眼镜
2020/03/16 全球购物
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
光声世纪笔试题目
2012/08/25 面试题
铭万公司.net面试题笔试题
2014/07/20 面试题
运动会通讯稿50字
2014/01/30 职场文书