Javascript编码 - 良好实践/标准

时间:2011-07-06 20:05:38

标签: javascript performance coding-style

我一直在做一个项目(带有一些AJAX,JQuery等的Javascript),我的项目已经变得相当大;我发现自己使用越来越多的客户端Javascript数组,现在我正在考虑使用2D Javascript数组。

我从增量测试中了解到,我目前的实现在浏览器资源和性能方面非常易于管理,但是想知道对于Javascript内存使用情况和网站的“重”程度是否存在普遍共识处理之前可以宣布“臃肿”。

此外,如果我已经通过使用这么多的存储和处理(我觉得我正在编写一个相当实质的Java / C应用程序)而进入危险区域,那么减轻负载的最佳方法是什么?

谢谢!

3 个答案:

答案 0 :(得分:3)

一个男人的“臃肿”是另一个男人的“健壮”。换句话说,这个问题没有“正确”的答案,因为它很大程度上取决于您的受众和您的网站。对于某些站点,每毫秒的加载时间都很重要,而对于其他站点,20秒的加载时间是完全可以接受的。这真的只是取决于。

我建议的最佳建议是使用众多网站性能分析工具之一(例如YSlow)来了解您的应用实际有多慢。这些工具还可以让您更好地了解使您的网站变慢的原因;例如,您可能认为它是您拥有的JS代码的数量,但实际上JS文件的数量(每个HTTP请求都有成本)可能是更重要的因素。

一旦您对网站的速度有一个客观的,可度量的感知,您就可以花时间考虑您的受众,并确定他们“慢得多”的速度有多慢。一旦你完成了,你就可以考虑YSlow(或你选择的任何工具)提供的所有不同建议,并选择哪些(如果有的话)对你的网站最有意义。

答案 1 :(得分:1)

如果您拥有大量数据,可以做的一件事就是在支持它的浏览器中利用localstorage

除此之外,我无法想到一个明确的膨胀定义..您的网站是否在适度的连接上快速加载?它在较慢的浏览器上如何做?如果它在这些情况下表现良好,那么你很高兴。

答案 2 :(得分:1)

你有一个很大的问题,即互联网连接速度是多变的,人们的硬件是多种多样的

<强>概览 与我的公司我们运行3秒系统,如果他们的页面不工作3秒开始下载我们有一个问题,但这可能是服务器连接速度问题,图像是大Javascript是很快的大部分时间但如果你担心内存和速度,javascript试图保持你的脚本整洁有帮助,

<强> TIDY 通过整洁我的意思是,如果你有一个巨大的js文件将所有你的功能或一个$(document).ready()中的每个东西只用在你的1或2个页面上尝试将它分开一点,但不要拆分它连接到服务器以下载更多文件的时间比运行它的时间长得多我的脚本大约有半个MB运行正常。

<强>测试 测试我使用的一个好方法是在Virtual Box中安装Windows并将内存减少到普通用户将有256MB(真的很旧),512(旧),1024(很多用户),2GB +(高最终用户)并记住你的目标,如果你建立一个JS重站点你想支持IE6,如果没有那么你的主要目标是Windows Vista或更新,因此至少需要512MB的Ram才能记得在不同的浏览器中测试FF(3.xx,4/5),IE(7/8/9)和chrome,因为不同的浏览器使用不同的内存量

跳出率的主要原因 页面需要很长时间加载...图像是这个

的最坏原因

页面崩溃浏览器...当某个事情发生时Javascript正在循环如果浏览器崩溃,人们不会回来

总会有人抱怨JavaScript的使用,以满足大众的需求而不是唯一的

<强>更新

保持脚本较小的另一个好方法是使用这个,也就是谷歌使用的最小脚本,它会丢弃文件大小(所以下载时间)并会降低内存,因为变量名称将使用更少的内存空间 http://code.google.com/closure/compiler/