js 隐藏代码生成工具
2014-06-27 23:25
274 查看
昨天写了篇《js 奇葩技巧之隐藏代码》,今天来写个工具方便大家生成吧。
在昨天算法基础上优化了解码算法,采用立即函数运行。
有两种模式可供选择:
1. eval 全局模式,比如你定义的 var abc = 123; 生成执行后,可直接调用。
2. Function 独立作用域模式,你定义的变量全是私有的,外部不可访问,如果你要暴露到全局,请使用 abc = 123; 或者 window.abc = 123; 实现。
alert('测试一下。')
执行方式:
eval(x)
Function(x)()
// !function(r){function n(r){return r=r.replace(/[^\x00-\xff]/g,function(r){return escape(r).replace("%","\\")}),r=r.replace(/[\s\S]/g,function(r){return r=r.charCodeAt().toString(2),r=r.length<8?Array(9-r.length).join("0")+r:r,r.replace(/../g,function(r){return t[r]})})}function e(r,n,e){return"!function(n,r){"+n+"(r.replace(/..../g, function(r){return String.fromCharCode(parseInt(r.replace(/./g, function(r){return n[r]}),2))}))"+e+'}({"\u200b":"00","\u200c":"01","\u200d":"10","\uFEFF":"11"},"'+r+'");'}var t={'00':'\u200b','01':'\u200c','10':'\u200d','11':'\uFEFF'};r.hider=function(r,t){var c=n(r),u="";return"eval"===t?t="(0,eval)":(t="Function",u="()"),e(c,t,u)}}(this);
$("#generate").click(function(){var e=$("#code").val();if(""===$.trim(e))return!1;var r=$("#excuteWith").val();$("#code").val(hider(e,r))});
// ]]>
好了,今天的内容就这些,大家就当玩具用吧。。。
相关文章推荐
- canvas-js贝塞尔曲线代码在线生成工具
- canvas-js贝塞尔曲线代码在线生成工具
- Html5系列(十二)canvas-js贝塞尔曲线代码在线生成工具
- 关于代码生成工具
- 代码生成工具之MyGeneration
- 代码生成工具之MyGeneration
- 发布Oracle存储过程包c#代码生成工具(CodeRobot)
- 完成的代码生成工具
- 很想做个net代码生成工具,开源代码,大家共同参与
- 代码生成工具之MyGeneration
- 帖一个代码生成工具,有兴趣的话一起来完善!
- 在javascript中访问web service方法及代码生成工具wsdl2js
- delphi实现批量缩略图生成工具开发代码
- 一个好玩的代码生成工具
- java代码框架生成工具 开发记录2005-03-02
- 代码生成工具之MyGeneration
- 都在谈代码生成工具,奇怪没人提到mygeneration,这是我见过最强的了
- Visual Paradigm试用 - 不错的UML建模和代码生成工具
- 一个struts+spring+hibernate的代码生成工具
- FireStorm一个不错的代码生成工具