javascript - 是否有 Google analitics.js 的非混淆源代码?
问题描述
当我将谷歌分析添加到网页时,它会加载https://www.google-analytics.com/analytics.js
scipt。是否有这个脚本的非缩小版来研究它?甚至是解释它如何工作的教程?
解决方案
您可以简单地将缩小后的代码放入 javascript 格式化程序中。为简单起见,让我们使用https://unminify.com/。
从https://www.google-analytics.com/analytics.js获取代码并将其传递给https://unminify.com/会产生一大块“未压缩”代码。它仍然难以阅读,因为它使用简短且非描述性的名称,但它有点可读。
“未缩小”但仍然难以阅读的代码示例:
var k = this,
l = function(a, b) {
a = a.split(".");
var c = k;
a[0] in c || "undefined" == typeof c.execScript || c.execScript("var " + a[0]);
for (var d; a.length && (d = a.shift());) a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b
};
var m = function(a, b) {
for (var c in b) b.hasOwnProperty(c) && (a[c] = b[c])
},
n = function(a) {
for (var b in a)
if (a.hasOwnProperty(b)) return !0;
return !1
};
var q = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;
var r = window,
t = document,
u = function(a, b) {
t.addEventListener ? t.addEventListener(a, b, !1) : t.attachEvent && t.attachEvent("on" + a, b)
};
小提琴(SO 的来源太大):https ://jsfiddle.net/s4bdL0y8/
推荐阅读
- python - 设置详细的正则表达式
- c# - 如何创建不是数据库中实体的 FileUpload 视图/视图模型
- sql-server - SQL Server 中的 Max 和 Decode 转换
- angularjs - AngularJS - 子组件不更新父组件数据
- javascript - 提供 loadChildren 函数有什么好处?
- c++ - LLVM 遍历 IR 并查找对 @llvm.dbg.declare 的所有调用
- powershell - 在基于 windows server 1709 的容器内运行带有 args 的可执行文件
- java - Java中的无限递归?
- android - 将操作栏和选项菜单添加到活动
- android - WebView.postVisualStateCallback 只在第一次工作