服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 编程技术 - 2021年了,jQuery的状态如何?

2021年了,jQuery的状态如何?

2021-07-26 23:18今日头条杭州程序员小张 编程技术

jQuery使我们更容易开发动态 Web 应用程序,尤其是涉及到 DOM 操作和网络请求时,jQuery 更加直接。但是现在,发生了什么变化,谁还在使用它,它的受欢迎程度如何?以下是答案。

我今天一直在使用jQuery——经过这么多年和许多项目。这个库出现在2006年,比React、Vue甚至Angular.js早了许多年。

jQuery 曾经是 JavaScript 世界的关键。它使我们更容易开发动态 Web 应用程序。尤其是涉及到 DOM 操作和网络请求时,jQuery 更加直接。

但是现在,发生了什么变化,谁还在使用它,它的受欢迎程度如何?以下是答案。

2021年了,jQuery的状态如何?

那么,jQuery 中有什么新东西?

 

我做了一个努力:我回到了2016年的jQuery官方博客页面,看看有什么变化。

答案是:老实说,没有发生太多事情。是的,jQuery 3 有很多变化——但没有一个是真正值得注意的。过去几年没有像 React.js 中引入钩子这样的更新。

小的变化是支持 for-of 循环,所以它现在可以被用于jQuery对象。在底层,jQuery现在也使用 requestAnimationFrame() 来执行动画。

然而,没有更显著的变化。原因很简单:jQuery已经把它应该做的事情做到了足够的程度。

公司还在使用它吗?

 

当谈到选择一项技术时,市场上的大公司发挥着重要作用。当有能力的开发者团队选择一项技术时,它的分量很重。即使jQuery正在失去人气,它仍然在网络上发挥着巨大的作用。

据 Wappalyzer 称,在所有使用 JavaScript 库的网站中,jQuery 仍占超过 34% 的巨大份额。

2021年了,jQuery的状态如何?

当然,对此类数据应该持保留态度:仅仅因为仍有数千或数百万个网站仍在使用这项技术,并不意味着这是一个好的决定。 jQuery 也已成为其他库必不可少的工具。

其中一个伟大的用途是Bootstrap,这个CSS框架使用jQuery进行所有的DOM操作,只有在Bootstrap 5中,才取消了包含jQuery。

事实上,Stack Overflow 仍然使用 jQuery。其他使用 jQuery 的公司包括:

  • Wellsfargo.com
  • Microsoft.com
  • Salesforce.com

是的,即使是微软。尽管如此,我不会将公司的技术栈视为唯一的真理。甚至他们的网站也有犯错误或没有时间优化的人。

jQuery已死

 

我不喜欢宣布技术“已死”。毕竟,科技行业不是医院。不过,你不得不承认 jQuery 已经失去了极大的人气,尤其是在过去的五年里:

2021年了,jQuery的状态如何?

但这是为什么呢?好吧,因为像 React、Vue 和 Angular 这样的框架和库变得越来越流行,许多人认为。但这肯定不是原因。流行的框架和jQuery有完全不同的方法。是的,两者的重点都是让构建web应用程序更容易。尽管如此,它们之间还是有很大的不同。

这些框架都是关于可重用组件、数据绑定、状态和单页应用程序的。另一方面,jQuery应该永远像纯JavaScript的方言,正如你在下面的例子中可以很好地看到。

  1. let el = document.getElementById('contents'); 
  2.  
  3. // the jQuery way:  
  4. let el = $('#contents'); 

你不应该对所有东西都使用React、Vue或Angular。对于没有jQuery的站点来说,jQuery仍然是一个很大的帮助。

框架并没有杀死jQuery。

现代 JavaScript 杀死了 jQuery。

尤其是方法 document.querySelector() 许多 jQuery 粉丝引用作为他们切换的原因。 (我也经常使用 jQuery,因为 $() 语法实用)。

JavaScript 的发展使我们更容易访问 DOM。即使是 jQuery 处理得非常好的网络请求,在 JavaScript 中也变得更加简单。

我们可能会错误地评估 jQuery 如何影响性能

 

当然,库对你的网站的性能来说并不是那么好。特别是如果它们很大,加载时间就会增加。但是,jQuery只有30kb,并不是那么大。作为比较,看看Vue、React.js和Angular的压缩和最小化的NPM包。

  • vue: 22 kb
  • react-dom + react: 41 kb
  • angular: 62 kb

重要提示:这只是包的大小。应用程序的生产包的大小要大得多!因此,在加载时间方面,jQuery 做得很好。

但是渲染性能呢?

大型框架喜欢争夺谁的性能最好。基准测试通常是同时渲染巨大的表或数千个状态更新。你已经可以在这样的实验中看到不同之处——当然,原生JS 击败了他们。

但老实说,基准通常没有那么有意义。特别是对于只显示内容而不是“应用程序”的网站,库的渲染性能几乎不重要。用户不会注意到下拉列表使用了“慢速”库。

最后的想法

 

我认为仍然使用 jQuery 并没有错。该库在许多情况下仍然非常有用,特别是如果您已经掌握了它。但是,值得一试现代 JavaScript。

如果你想优化你的web应用程序的性能到最后的细节,jQuery没有任何作用。你可以通过用普通JS编写所有内容来节省30kb的代码。

jQuery过去和现在都更适合于那些以内容为主的网站,而不是以功能为主。在更复杂的网络应用中,React和其他公司的组件理念是一个很好的切入点。

原文地址:https://www.toutiao.com/a6987638085656035847/?log_from=beb40c1416a4_1627249722596

延伸 · 阅读

精彩推荐
  • 编程技术让开发效率倍增的 VS Code 插件

    让开发效率倍增的 VS Code 插件

    今天来分享一些提升开发效率的实用 VS Code 插件!Better Comments 扩展可以帮助我们在代码中创建更人性化的注释,有不同形式和颜色的注释供我们选择。 ...

    前端充电宝7132022-04-21
  • 编程技术Delphi - Indy idMessage和idSMTP实现邮件的发送

    Delphi - Indy idMessage和idSMTP实现邮件的发送

    这篇文章主要介绍了Delphi - Indy idMessage和idSMTP实现邮件的发送,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    JJ_JeremyWu6592020-09-22
  • 编程技术从Context源码实现谈React性能优化

    从Context源码实现谈React性能优化

    这篇文章主要介绍Context的实现原理,源码层面掌握React组件的render时机,从而写出高性能的React组件,源码层面了解shouldComponentUpdate、React.memo、PureComponen...

    魔术师卡颂5312020-12-20
  • 编程技术2021年值得关注的React PDF 库

    2021年值得关注的React PDF 库

    今天,许多网络应用程序为其用户提供内置的PDF浏览选项。然而,选择一个并不容易,因为它们的功能远远超过显示PDF。在这篇文章中,我将评估5个React的...

    TianTianUp5232021-06-21
  • 编程技术真正聪明的程序员,总有办法不加班

    真正聪明的程序员,总有办法不加班

    工作效率提升了,就可以少加班了,聪明的程序员,总会有一堆可以提升编码效率的工具?当一种工具满足不了工作需求,就去探索新的,今天纬小创就给...

    今日头条12482021-03-04
  • 编程技术AIOps,SRE工程师手中的利器

    AIOps,SRE工程师手中的利器

    AIOps开始成为一种极为重要的站点可靠性工程工具。它能够高效吸纳观察数据、参与数据以及来自第三方工具的数据,判断系统运行状态并保证其处于最佳...

    至顶网5972021-03-08
  • 编程技术用户态 Tcpdump 如何实现抓到内核网络包的?

    用户态 Tcpdump 如何实现抓到内核网络包的?

    在网络包的发送和接收过程中,绝大部分的工作都是在内核态完成的。那么问题来了,我们常用的运行在用户态的程序 tcpdump 是那如何实现抓到内核态的包...

    开发内功修炼11612021-09-08
  • 编程技术简单、好懂的Svelte实现原理

    简单、好懂的Svelte实现原理

    本文会围绕一张流程图和两个Demo讲解,正确的食用方式是用电脑打开本文,跟着流程图、Demo一边看、一边敲、一边学...

    魔术师卡颂4822021-11-10