我有一个复杂的dojo应用程序,可以正常编译,但在使用Google的Closure Compiler进行编译后,我会在某些行为中产生微妙的差异。
实际上,它非常难以调试,而且我一直无法找到有关使用Google Closure编译和未编译的Javascript之间可能的功能差异的任何信息。
有人能指出我已知差异的方向,或分享任何类似的经历以及从何处开始寻找的一些想法?
答案 0 :(得分:1)
在Chad的回答的帮助下,我发现了一个错误,我的工作代码如此:
a = [b, b = a][0]; // swap variable values
编译为:
a = b;
可能会在以后的版本中修复,因为使用在线Closure编译器应用程序的测试不会显示相同的错误。通过不尝试聪明来修复它,并在交换值时使用第三个变量来保存旧值。