(JS实现)MapBar中坐标的加密和解密的脚本

所属分类: 网络编程 / JavaScript 阅读数: 1180
收藏 0 赞 0 分享
因为有一朋友问起这个问题,我找了下,今天就发出来看看吧,不知道说的对不对。
不过对于Mapbar这样处理的方法我个人觉得还是很值得学习的,至少不会给你明码的坐标。
不知道Mapbar的朋友看了会不会找我说我那,呵呵,不过没关系,最近想写篇文章给你们些个人的小小的建议,觉得说的不好也无妨。忙完这阵子就写。

下面是Mapbar中的加密和解密部分的JS,我做了简单说明了,什么36进制又16进制的,看的我也头晕。
实例的结果是这样的:
IJSDSBWVJABFA解密后的值:121.46979,31.23245
31.23245,121.46979加密后的值:IJSDSBZVJABFA
当然你也可以用其他坐标来测试和检验。
友情提醒:Mapbar中的那个常量值可能已经变动了,用现在方法解出来的和百度的值是不一样的。
下面的代码复制后保存为网页形式就可以看到效果。

Mapbar中的加密和解密(JS)
复制代码 代码如下:

<script language="javascript"> 
//一个常量但变动后加密解密的值会变动 
var strLicenseKey = 699; 
//解密坐标 
function jiemi(meT){ 
var W7pj=-1; 
var I524S=0; 
var qk_X=''; 
for(var i=0;i<meT.length;i++){var j86T=parseInt(meT.charAt(i),36)-10; 
if(j86T>=10)j86T=j86T-7;qk_X+=(j86T).toString(36); 
if(j86T>I524S){W7pj=i;I524S=j86T}}var U8T=parseInt(qk_X.substring(0,W7pj),16); 
var f9v8D=parseInt(qk_X.substring(W7pj+1),16); 
var H1433=new Array(); 
H1433[0]=(U8T+f9v8D-parseInt(strLicenseKey))/2; 
H1433[1]=(f9v8D-H1433[0])/100000.0; 
H1433[0]/=100000.0; 
return H1433}; 
//解密坐标的实例 
document.write('这是IJSDSBWVJABFA解密后的值:<br>'+jiemi('IJSDSBWVJABFA')+'<br><br>'); 
//加密坐标 
function jiami(e53,B92_) 
    { 
        var WVd94=parseInt(parseFloat(e53)*100000); 
        var j7_2=parseInt(parseFloat(B92_)*100000); 
        var rpB=(j7_2-WVd94+parseInt(strLicenseKey)).toString(16); 
        var ie9=(j7_2+WVd94).toString(16); 
        var H1433=''; 
        for(var i=0;i<rpB.length;i++) 
        { 
            var k6A36=parseInt(rpB.charAt(i),16); 
            H1433+=(((k6A36>=10)?(k6A36+7):k6A36)+10).toString(36) 
        } 
        H1433+='z'; 
        for(var i=0;i<ie9.length;i++) 
        { 
            var k6A36=parseInt(ie9.charAt(i),16); 
            H1433+=(((k6A36>=10)?(k6A36+7):k6A36)+10).toString(36) 
        } 
        return H1433.toUpperCase() 
    } 
//加密实例 
document.write('这是31.23245,121.46979加密后的值:<br>'+jiami('31.23245','121.46979'));     
</script>
更多精彩内容其他人还在看

layui table 复选框跳页后再回来保持原来选中的状态示例

今天小编就为大家分享一篇layui table 复选框跳页后再回来保持原来选中的状态示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Vue-Cli项目优化操作的实现

这篇文章主要介绍了Vue-Cli项目优化操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题

这篇文章主要介绍了解决包含在label标签下的checkbox在ie8及以下版本点击事件无效果兼容的问题,本文给大家总结的非常详细,需要的朋友可以参考下
收藏 0 赞 0 分享

vue 父组件通过v-model接收子组件的值的代码

这篇文章主要介绍了vue 父组件通过v-model接收子组件的值的代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

vue 全局环境切换问题

小编在开发使经常会碰到全局切换问题,今天小编给大家带来一篇教程给大家介绍vue 全局环境切换问题,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

element-ui 本地化使用教程详解

这篇文章主要介绍了element-ui 本地化使用教程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

在Vue项目中,防止页面被缩放和放大示例

今天小编就为大家分享一篇在Vue项目中,防止页面被缩放和放大示例,具有很好的参考 价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

vue h5移动端禁止缩放代码

今天小编就为大家分享一篇vue h5移动端禁止缩放代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Vue 3.0双向绑定原理的实现方法

这篇文章主要为大家详细介绍了Vue 3.0双向绑定原理的实现方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

nest.js 使用express需要提供多个静态目录的操作方法

这篇文章主要介绍了nest.js 使用express需要提供多个静态目录的操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享
查看更多