我有两个不同版本的 javascript 文件:一个工作正常,另一个执行较慢。我在这两个文件上都尝试了 Closure Compiler,但是......因为我是个白痴,几个月后我很高兴地注意到好的版本的原始源文件丢失了。不仅来自我的硬盘,甚至来自我的记忆(我不记得我做了哪些更改)。
所以现在我有:
- 正常工作文件的压缩代码
- 坏工作文件的压缩代码
- 坏工作文件的未压缩代码
我需要重建运行良好的源文件,很高兴这两个压缩版本之间确实存在一些差异。
这是我需要你帮助的地方。
我在运行良好的压缩代码中发现了这一点
(function () {
// same stuff here
})();
requestAnimFrame(O);
在糟糕的工作压缩代码中是这样的
B.onload = function () {
// same stuff here
};
requestAnimFrame(O)
那么,闭包编译器究竟如何声明一个没有名字的函数呢?();
函数声明末尾的那些是什么?这是如何在未压缩的代码中实现的?如果它可能有帮助,这就是未压缩的坏版本(我希望修复)中的样子:
function init() {
// same stuff here
}
B.onload = function(){
start()
}
function start() {
init()
requestAnimFrame(0);
}
如果您想自己测试差异,这是使用好代码时 的结果,这是使用坏代码时的结果
尝试单击徽标:立方体在第一个链接中滑动得更快,如果您有一个好的 CPU,它不应该在运行视觉效果时被杀死。相反,第二个链接似乎使 cpu 过载并且在动画中进行时有不同的显示(我已经发现了代码中的差异并记住了我所做的更改,从而解决了第二个问题)。