今天我一直在使用jQuery-经过这么多年和许多项目。这个库出现于2006年,比React、Vue甚至Angular.js早很多年。jQuery曾经是JavaScript世界的关键。它使我们更容易开发动态网络应用程序。尤其是涉及到DOM操作和网络请求时,jQuery更为直接。但是现在,发生了什么变化,谁还在使用它,它有多受欢迎?这就是答案。那么,jQuery有哪些新功能?我做了一个努力:我回到2016年的官方jQuery博客页面,看看发生了什么变化。答案是:老实说,并没有发生太多事情。是的,jQuery3中有很多变化——但没有一个真正值得注意。在过去的几年里,没有像React.js中引入钩子这样的更新。小的变化是支持for-of循??环,因此它现在可以与jQuery对象一起使用。在幕后,jQuery现在也使用requestAnimationFrame()来执行动画。但是,没有更显着的变化。原因很简单:jQuery已经做了足够的它应该做的事情。公司还在使用它吗?在选择技术时,市场上的大公司扮演着重要的角色。当一个有能力的开发团队选择一项技术时,它很重要。尽管jQuery正在失去人气,但它仍然在网络上发挥着巨大的作用。据Wappalyzer称,在所有使用JavaScript库的网站中,jQuery仍然占据了超过34%的巨大份额。当然,应该对这些数据持保留态度:仅仅因为仍有成千上万的网站仍在使用该技术,并不意味着这是一个好的决定。jQuery也已成为其他库的必备工具。Bootstrap是一个很好的用途,它是一个使用jQuery进行所有DOM操作的CSS框架,只是在Bootstrap5中,jQuery被删除了。事实上,StackOverflow仍然使用jQuery。其他使用jQuery的公司包括:Wellsfargo.comMicrosoft.comSalesforce.com是的,甚至是Microsoft。不过,我不会将公司的技术堆栈视为唯一的事实。甚至他们的网站也有人犯错误或没有时间优化。jQuery已死我不喜欢宣布技术“已死”。毕竟,科技行业不是医院。不过,您必须承认jQuery已经失去了巨大的人气,尤其是在过去五年中:但为什么呢?好吧,许多人认为,由于像React、Vue和Angular这样的框架和库变得越来越流行。但这当然不是原因。流行的框架和jQuery有完全不同的方法。是的,两者的目的都是为了让构建Web应用程序更容易。尽管如此,它们之间还是有很大的不同。这些框架都是关于可重用组件、数据绑定、状态和单页应用程序的。另一方面,jQuery应该始终像纯JavaScript的方言一样,正如您在下面的示例中所看到的那样。letel=document.getElementById('contents');//thejQueryway:letel=$('#contents');你不应该对一切都使用React、Vue或Angular。对于没有jQuery的站点,jQuery仍然是一个很大的帮助。框架并没有杀死jQuery。现代JavaScript杀死了jQuery。特别是许多jQuery粉丝引用的方法document.querySelector()作为他们切换的原因。(由于有用的$()语法,我也经常使用jQuery)。JavaScript的发展让我们更容易访问DOM。即使是jQuery处理得非常好的网络请求,在JavaScript中也要简单得多。我们可能错误地评估了jQuery如何影响性能当然,该库对您网站的性能来说并不是那么好。特别是如果它们很大,加载时间会增加。然而,jQuery只有30kb,并没有那么大。为了进行比较,请查看Vue、React.js和Angular的缩小版和缩小版NPM包。vue:22kbreact-dom+react:41kbangular:62kb重要说明:这只是包大小。该应用程序的生产包大小要大得多!所以jQuery在加载时间方面做得很好。但是渲染性能呢?大型框架喜欢竞争谁的性能最好。基准测试通常同时呈现巨大的表格或数千个状态更新。你已经可以看到像这样的实验的区别——当然,原生JS胜过它们。但老实说,基准通常没有那么有意义。特别是对于只显示内容而不显示“应用程序”的站点,库的渲染性能几乎不重要。用户不会注意到下拉列表使用“慢”库。最后的想法我不认为仍然使用jQuery有什么问题。该库在许多情况下仍然非常有用,尤其是当您已经拥有它时。但是,值得一试ModernJavaScript。如果你想优化你的web应用程序的性能到最后的细节,jQuery什么都不做。通过使用纯JS编写所有内容,您可以节省30kb的代码。jQuery过去是,现在仍然是,比功能驱动的网站更适合以内容为中心的网站。在更复杂的Web应用中,React等人的组件概念是一个很好的切入点。
