ascii2native 转码 解码
//把十六进制的编码转为原码
function asciiHex2native(strAscii) {
var output = "";
var posFrom = 0;
var posTo = strAscii.indexOf("\\x", posFrom);
while (posTo >= 0) {
output += strAscii.substring(posFrom, posTo);
var s="";
s=strAscii.substr(posTo, 4).replace("\\x","")
var arr=s.split(""), n=arr.length,k=0, s=0
for(var i=0;i<n;i++){
k=n-i-1;
var a=arr[i].toLocaleLowerCase();
if(a=="a"){a=10;}
else if(a=="b"){a=11;}
else if(a=="c"){a=12;}
else if(a=="d"){a=13;}
else if(a=="e"){a=14;}
else if(a=="f"){a=15;}
s+=(a)*Math.pow(16,k);
}
output += String.fromCharCode(s);
posFrom = posTo + 4;
posTo = strAscii.indexOf("\\x", posFrom);
}
output+=strAscii.substring(posFrom);
return ascii2native(output);
} //把正常的ascii编码转为原码
function ascii2native(strAscii) {
var output = "";
var posFrom = 0;
var posTo = strAscii.indexOf("\\u", posFrom);
while (posTo >= 0) {
output += strAscii.substring(posFrom, posTo);
output += toChar(strAscii.substr(posTo, 6));
posFrom = posTo + 6;
posTo = strAscii.indexOf("\\u", posFrom);
}
output += strAscii.substr(posFrom);
return output;
}
function toChar(str) {
if (str.substr(0, 2) != "\\u") return str;
var code = 0;
for (var i=2; i<str.length; i++) {
var cc = str.charCodeAt(i);
if (cc >= 0x30 && cc <= 0x39)
cc = cc - 0x30;
else if (cc >= 0x41 && cc <= 0x5A)
cc = cc - 0x41 + 10;
else if (cc >= 0x61 && cc <= 0x7A)
cc = cc - 0x61 + 10;
code <<= 4;
code += cc;
} if (code < 0xff) return str;
return String.fromCharCode(code);
}
如下一段加密的代码:
var FF={"\x48\x6F\x6D\x65":{"\x55\x72\x6C":document["\x55\x52\x4C"],"\x54\x70\x6C":"\x64\x65\x66\x61\x6C\x75\x74","\x43\x68\x61\x6E\x6E\x65\x6C":"","\x47\x65\x74\x43\x68\x61\x6E\x6E\x65\x6C":function (_0xa267x1){if(_0xa267x1=="\x31"){return "\x76\x6F\x64";} ;if(_0xa267x1=="\x32"){return "\x6E\x65\x77\x73";} ;if(_0xa267x1=="\x33"){return "\x73\x70\x65\x63\x69\x61\x6C";} ;} ,"\x4A\x73":function (){this["\x43\x68\x61\x6E\x6E\x65\x6C"]=this.GetChannel(Sid);if($("\x23\x77\x64")["\x6C\x65\x6E\x67\x74\x68"]>0){$key="\u8F93\u5165\u5F71\u7247\u540D\u79F0\u6216\u4E3B\u6F14\u540D\u79F0";if($("\x23\x77\x64")["\x76\x61\x6C"]()==""){$("\x23\x77\x64")["\x76\x61\x6C"]($key);} ;$("\x23\x77\x64")["\x66\x6F\x63\x75\x73"](function (){if($("\x23\x77\x64")["\x76\x61\x6C"]()==$key){$("\x23\x77\x64")["\x76\x61\x6C"]("");} ;} );$("\x23\x77\x64")["\x62\x6C\x75\x72"](function (){if($("\x23\x77\x64")["\x76\x61\x6C"]()==""){$("\x23\x77\x64")["\x76\x61\x6C"]($key);} ;} );} ;$("\x23\x66\x61\x76")["\x63\x6C\x69\x63\x6B"](function (){var _0xa267x2=window["\x6C\x6F\x63\x61\x74\x69\x6F\x6E"]["\x68\x72\x65\x66"];try{window["\x65\x78\x74\x65\x72\x6E\x61\x6C"]["\x61\x64\x64\x46\x61\x76\x6F\x72\x69\x74\x65"](_0xa267x2,document["\x74\x69\x74\x6C\x65"]);} catch(err){try{window["\x73\x69\x64\x65\x62\x61\x72"]["\x61\x64\x64\x50\x61\x6E\x65\x6C"](document["\x74\x69\x74\x6C\x65"],_0xa267x2,"");}
转码后的结果为
var FF={"Home":{"Url":document["URL"],"Tpl":"defalut","Channel":"","GetChannel":function (_0xa267x1){if(_0xa267x1=="1"){return "vod";} ;if(_0xa267x1=="2"){return "news";} ;if(_0xa267x1=="3"){return "special";} ;} ,"Js":function (){this["Channel"]=this.GetChannel(Sid);if($("#wd")["length"]>0){$key="输入影片名称或主演名称";if($("#wd")["val"]()==""){$("#wd")["val"]($key);} ;$("#wd")["focus"](function (){if($("#wd")["val"]()==$key){$("#wd")["val"]("");} ;} );$("#wd")["blur"](function (){if($("#wd")["val"]()==""){$("#wd")["val"]($key);} ;} );} ;$("#fav")["click"](function (){var _0xa267x2=window["location"]["href"];try{window["external"]["addFavorite"](_0xa267x2,document["title"]);} catch(err){try{window["sidebar"]["addPanel"](document["title"],_0xa267x2,"");}
ascii2native 转码 解码的更多相关文章
- c#转码解码
///反转码 mdata[k].MNAME = unescape(mdata[k].MNAME);程家楠 13:51:00 Microsoft.JSc ...
- Python Base64转码解码
Python Base64 提供了好几种方法例如: encode, decode, encodestring, decodestring, b64encode, b64decode, standard ...
- javascript Base64转码解码
javascript 使用btoa和atob来进行Base64转码和解码 $scope.checkAddCookie = function() { var expireDate = new Date( ...
- Halcon的二维码解码步骤和解码技巧
一.二维码简介 1 . 类型多样,常见的有QR Code二维码. Data Matrix二维码等. 2.高密度编码,信息容量大. 3.容错能力强,具有纠错功能:二维码因穿孔.污损等引起局部损坏时,照样 ...
- vue+element ui项目总结点(一)select、Cascader级联选择器、encodeURI、decodeURI转码解码、mockjs用法、路由懒加载三种方式
不多说上代码: <template> <div class="hello"> <h1>{{ msg }}</h1> <p> ...
- 关于base64转码解码
刚好涉及到记录一下 1.JS BASE64 解码和编码 js代码: /** * * Base64 encode / decode * * @author haitao.tu * @date 2010- ...
- AMR格式语音采集/编码/转码/解码/播放
1.opencore-amr源码下载 https://sourceforge.net/projects/opencore-amr/files/opencore-amr/ 2.opencore-amr编 ...
- Python 二维码解码
二维码解析 Python中关于二维码解析的现成模块有很多,比较著名的就是Zbar以及ZXing.然而很不幸的是,官方的版本都是支持到python2.x,下面是在python2.x的例子: import ...
- JavaScript中url 传递参数(特殊字符)解决方法及转码解码的介绍
有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了.下表中列出了一些URL特殊符号及编码 十六进制值 1. + URL 中+号表示空格 %2B 2. 空 ...
随机推荐
- 用fullPage来实现全屏滚动效果
[注意]所有的page要用div包裹,id为fullpage.不能直接包在body中 [使用fullpage的步骤] 1.导入 JQuery.js,fullpage.js,fullpage.css ...
- Jade——变体的HTML
什么是jade? jade是一个模板引擎,是变体的HTML. 模板引擎就是一个库,用来解释素具渲染视图的框架,也可以叫做HTML的预处理语言. jade是Node.js的一个模板引擎,他的语法借鉴了H ...
- java SE 入门之运算符(第三篇)
在 java 中主要有以上运算符,分为 赋值运算符 ,算术运算符.关系运算符(比较运算符),逻辑运算符和三目运算符(三元运算符). 我们一起来学习下吧! 一.赋值运算符 赋值运算符主要有五个.分别是 ...
- Java数据类型和不同数据类型在JVM内存分配
1.java数据类型分类 Java语言是强类型(Strongly typed)语言,强类型包含两方面的含义:①所有的变量必须先声明,后使用:②指定类型的变量只能接受类型与之匹配的值.这意味着每个变量和 ...
- 百度Ueditor编辑器
百度的Ueditor编辑器出于安全性考虑,用户在html模式下粘贴进去的html文档会自动被去除样式和转义.虽然安全的,但是非常不方便. 1. ueditor.config.js 做出如下修改即可: ...
- 纪念Vamai
知道Vamei这位博主去世的消息有些日子啦,在他的豆瓣主页也留下了只言片语,他写的协议森林让我印象深刻,在博客园也是我关注列表里的一位. 本来没打算写一篇文来说Vamei去世的事情,不过意外之是加 ...
- PHP生成缩略图(3)--封装类
前台php代码 <?php require_once 'img_thumb.class.php'; $image = new ImgLib(); //源图路径 $src_path='E:/wam ...
- bootstrap前端框架使用总结分享
1.bootstrap 排版 全局样式style.css: 1.移除body的margin声明 2.设置body的背景色为白色 3.为排版设置了基本的字体.字号和行高 4.设置全局链接颜色,且当链接处 ...
- drupal7 模糊查询接口
$query->condition('card_no', db_like($batch_no).'%', 'LIKE');
- 玩转Android拍摄功能
简单拍照与摄像 在富媒体开始流行之前,整个世界是一个灰暗且平淡无奇的地方.还记得Gopher吗?我或许不记得了.自从APP成为用户生活的一部分之后,这便给他们提供了一种方式可以来存放他们生活的细节.使 ...