我工作的公司给我们(更确切地说是我自己)买了O‘’Reilly的jQuery Cookbook,我从头到尾都在读。现在我在5.13讨论名称查找。它声称,在适当的情况下,针对名称查找进行优化的代码可以有高达70%的性能提升。在一个非常情景的例子中,它声称速度甚至是35倍,并将执行时间从7秒减少到仅0.2秒!
我的问题是:名称查找优化在真实的实时环境中通过哪个因素来提高性能,值得在一个4k JS行的AJAX应用程序上多花几个小时吗?
发布于 2009-12-21 17:33:08
它所帮助的因素取决于它是如何真正被使用的。这就像是问一根绳子有多长。
我见过在javascript中为true、false、undefined设置名称可以使应用程序的运行速度至少提高10倍。它变得更快的原因是它不需要查看全局范围链内部。Nick Zakas在下面来自google code的视频中很好地解释了这一点
http://googlecode.blogspot.com/2009/06/nicholas-c-zakas-speed-up-your.html
编辑:
我只是偶然发现了这一点,并认为它可能是有用的。这也是对作用域链的快速解释。http://www.phpied.com/extreme-javascript-optimization/
发布于 2009-12-21 17:33:11
Nicholas Zakas在这个主题上做了一些研究,并在这个Google Tech Talk上谈到了这一点。看起来你可以得到一个有趣的性能增强。我不确定确切的数字,但可以肯定的是,优化名称查找将提高代码的速度。
当然,如果您正在拖着10年的遗留代码,而这些代码工作得很好,那么不要担心优化……但是如果你的应用程序很慢,我会考虑优化代码。
如果你决定使用重构,试着找出你可以优化的地方。我建议使用javascript profiler of firebug来做到这一点。
你甚至可以尝试优化你的代码的一小部分,看看你得到的性能提升,然后找出是否值得优化你的应用程序的其余部分。
https://stackoverflow.com/questions/1939092
复制相似问题