过度使用jquery

时间:2010-10-18 22:51:06

标签: javascript jquery frameworks

当使用诸如jquery之类的javascript框架时,是否真的有可能过度使用库来完成可以使用普通旧javascript简单完成的事情。

如果是这样,那么这类事情是什么:

A:慢代码下降
B:减少代码的便携性 C:让程序员不必了解所有内容实际发生的事情

我正在考虑使用jquery .each而不是简单的for循环。当然,这会增加一些代码,但如果你明白我的意思就是它的“真正的”javascript。

也许我只是天真。

6 个答案:

答案 0 :(得分:7)

嗯,我想有一个机会,但总的来说,优势远远超过了劣势。

一般

a)如果你在纯JS中做一些简单的事情,它可能会慢慢降低代码,但在大多数情况下,无论如何都要在jQuery中进行优化。另一方面,你做任何复杂事情的天真方式可能没有Reisig等人那样快。

b)它肯定会使代码不那么便携,因为它依赖于jQuery库。另一方面,它将在浏览器和版本之间更多可移植,这是更重要的考虑因素。

c)是的,它可能隐藏了一些javascript魔法。然而,我的经验是,你最终还是要学习它;与此同时,jQuery使您的工作效率更高,速度更快。

(另请注意,这些要点实际上适用于大多数库.jQuery是我最喜欢的,但是我用dojo写了很多东西,并且很愉快地使用了原型,scriptaculous和YUI。)

答案 1 :(得分:7)

B)它使代码更具可移植性,而不是更少,因为浏览器之间的差异由框架实现来处理。

答案 2 :(得分:1)

AS因为速度慢,我认为jQuery的初始加载会解决你的大多数功能。如果你要加载20个插件,那么你可能会遇到一些问题。

jQuery与其他任何JS文件相比都不逊色。如果您使用CDN则更不用说。

我确实倾向于同意第三点。我倾向于不再对很多实际的JS大惊小怪,我只是在合理的范围内使用jQuery来做所有事情。

总的来说,我认为jQuery和其他JS库是最后一点发生在Web开发上的最好的事情之一。

答案 3 :(得分:1)

关于jquery的真正好处是他们已经提出了一些快速,流畅的代码,有助于保护您免受跨浏览器的危害。所以,我确信任何事情都可以被滥用,但是知道我的代码更有可能通过更新jquery的API来更好地跟上未来的浏览器更改,而不用担心我过时的javascript代码让我更加安心心神。它完美吗? Noooooo。但是现在,无论现在还是在可预见的未来,它都让我的生活变得更加轻松。如果你编写“原始”javascript专用代码,那么如果一个浏览器改变了他们处理你的情况的方式,那么只有一小部分用户可以有效地查看你的网站。

答案 4 :(得分:0)

我想如果我要在页面上加载库,我可以尽可能多地使用它。我试图获得我的收益(可以这么说)。

答案 5 :(得分:0)

当然,像任何“新”技术一样,它被过度使用。 对于像Linq或.NET的CSS适配器这样的东西也是如此。 规则是如果你能简单有效地做到这一点!