您网站上的自定义 jQuery 脚本中有多少行代码?多少才算太多?

Posted

技术标签:

【中文标题】您网站上的自定义 jQuery 脚本中有多少行代码?多少才算太多?【英文标题】:How many lines of code is in your custom jQuery script on your site? And how much is too much? 【发布时间】:2010-09-27 09:57:32 【问题描述】:

对于我们的网站,我使用了很多 jQuery - 现在我正在查看基础库之上的 340 行 jQuery 代码。多少是太多了?我会添加更多,我什么时候开始尝试压缩代码并最终转向 OOP?

【问题讨论】:

【参考方案1】:

行数没有任何意义——重要的是你实际在做什么。你可能有 10 行效率极低的代码,这比精心编写的 1000 行代码造成的损害要大得多。

【讨论】:

虽然与质量无关,但通常与工作时间有关 (; 没有。当你衡量程序员的效率和可靠性时,它很重要。因此,JQuery 被我认为是垃圾。我宁愿为程序员支付 10 行纯 JS 代码而不是 2 行(+1000)的 JQuery 废话。【参考方案2】:

最理想的情况是,您应该尽可能减小脚本大小,但是对于当今的“Web 2.0”网站,您很可能会积累大量 javascript 代码。

重要的是,在部署您的网站之前,确保minify 和gzip 您的脚本文件尽可能减小您的脚本文件的大小。 p>

如果您真的对优化和提高网站性能感兴趣,我强烈建议您看看 Steve Souders 的 High Performance Web Sites: Essential Knowledge for Front-End Engineers

【讨论】:

【参考方案3】:

多少是太多取决于您的应用程序。

您应该力求简洁,但不能以牺牲可读性或用户体验为代价。

【讨论】:

【参考方案4】:

我会比代码行更关注脚本加载时间。如果它变得太大,请将文件分解为特定于页面或部分的文件。 “太多”仅基于应用程序性能以及您认为用户可以接受的程度。

【讨论】:

【参考方案5】:

340 行不算什么,尝试使用一些 Telerik 控件...很快就会达到 15k+ 行!

【讨论】:

【参考方案6】:

这取决于您正在从事的项目。你应该保持你的代码高效和可读。部署网站后,只需压缩和 gzip 脚本即可提高性能。

【讨论】:

【参考方案7】:

我不会关心你的 JavaScript 的长度。您可以使用多种选项,例如使用 Packer 压缩您的 JavaScript 以进行发布(您需要练习一些它,因为它确实有一些关于其工作方式的规则)。

专注于确保您的代码易于理解且易于维护。在网站中大量使用 JavaScript 会很快变得棘手。

与用户必须等待额外一秒钟才能加载页面相比,试图使其变短或变小对你的伤害更大。

【讨论】:

【参考方案8】:

对于开发而言,将代码分离到单独的 .js 文件中变得绝对必要,否则事情会变得一团糟。

然而,

不要在生产页面中留下大量的脚本引用。大多数浏览器仅限于 2 个同时 HTTP 请求。这些脚本引用会减慢您的页面加载速度,并且远远超过单独缓存组件可能带来的任何好处。

您可以使用 JS Builder 将您的开发文件连接到一个文件中:

http://code.google.com/p/js-builder/

编辑:脚本引用是指

【讨论】:

【参考方案9】:

340 行 javascript 不算什么,但随着您的 javascript 代码库的增长,我会花一些时间研究用于即时压缩和连接 javascript 的框架。如果您使用 Java,我建议您使用 JAWR,它可以让您在开发模式下的多个引用和生产中的单个缩小脚本之间切换。只需确保在上线之前在生产模式下测试您的应用程序,因为缩小算法可能会在一些晦涩难懂的情况下搞砸您的代码(如果您编写干净的代码并记住以';'结束每一行你应该没问题) .

如果您不使用 Java,我不知道任何框架,但您自己实现类似的东西实际上并不难。我想我有一些代码可以在 eZ Publish 中执行,它是用 php 编写的。

【讨论】:

以上是关于您网站上的自定义 jQuery 脚本中有多少行代码?多少才算太多?的主要内容,如果未能解决你的问题,请参考以下文章

服务来查看每个网页上的脚本? [关闭]

通过ajax调用更新行后使用jQuery对表进行排序

用于检查应用程序中有多少行代码的 Ruby 脚本

jquery datepicker上的自定义动态验证直到第二个焦点才起作用

如何添加php脚本来转发表单的副本

Jquery 无法读取 Internet Explorer 上的自定义标记文本