2024年了,为何有些资深开发者仍钟爱JQuery?

转载说明:原创不易,未经授权,谢绝任何形式的转载

大家好,我最近阅读了一篇国外大佬关于继续使用JQuery的文章,感觉收获颇丰。在这个追求新技术的时代,了解为何JQuery仍受青睐,对我们来说非常有价值。下面,我将基于这位大佬的观点,为大家深入解析JQuery的独特魅力。

首先,我们要明白,JQuery仍然是基于JavaScript的一个库。它的出现,本质是为了简化JavaScript的开发过程。随着时间的推移,JQuery经历了多次迭代,不仅增强了原有的JS功能,还添加了许多现代化的特性。更重要的是,作为一个开源工具,JQuery可以免费使用,这大大降低了开发成本。

值得一提的是,JQuery最新版本3.7.1已于2023年8月28日发布。这一重要更新不仅证明了JQuery作为一个项目的活跃和持续维护,同时也显示了它在技术市场中仍然占有一席之地。这一版本解决了之前版本中的一些问题,例如在Chrome和Safari浏览器中对<tr />元素尺寸计算的修正,以及重新暴露了在移除Sizzle过程中不小心删除的jQuery.find.tokenize方法。这些改进和修复展示了JQuery团队对于提供稳定、可靠工具的承诺,以及对于社区反馈的积极响应。

  • 简化开发:JQuery使得事件处理、HTML文档遍历、Ajax交互等变得简单快捷,有效减少了开发时间。
  • 易于上手:相较于ReactJS等现代框架,JQuery的学习曲线更平缓,更适合初学者或是非专业的前端开发者。
  • 社区支持:JQuery有着庞大的社区支持,不断有新功能和改进加入。

然而,任何技术都有其局限性。JQuery在某些地区可能已不再流行,且在功能上不如原生JS强大。此外,使用JQuery可能会带来一定的性能开销。

  • 在无JS环境下的表现:JQuery能够在浏览器禁用JS的情况下仍正常渲染内容,这对于兼容性和可访问性至关重要。
  • 简洁性的推广:对于开发者来说,JQuery的简单和直观是其吸引力所在。它简化了代码,使得开发和部署更加迅速。
  • 与Visual Studio的整合:对于.NET开发者而言,JQuery能够与Visual Studio无缝集成,这是其另一个重要优势。

综合这位大佬的观点,我认为JQuery在某些情况下依然是一个不错的选择。尤其是对于那些追求快速开发、有限的预算或是需要维护旧有项目的开发者来说,JQuery提供了一个便捷、成熟且稳定的解决方案。虽然它可能不如一些现代框架那样强大或流行,但它在简化开发、提高生产力方面仍然有其独特的价值。

当然,每个项目的需求都不尽相同,选择哪种技术最终还是要基于项目的具体需求来定。但不可否认的是,即使在2024年,JQuery仍然有其存在的意义。

希望通过我的整理,大家能更深入地理解JQuery的价值所在。欢迎大家在评论区留言讨论,分享你们对JQuery的看法和经验。期待下次的技术分享,祝大家编程愉快!

由于文章内容篇幅有限,今天的内容就分享到这里,文章结尾,我想提醒您,文章的创作不易,如果您喜欢我的分享,请别忘了点赞和转发,让更多有需要的人看到。同时,如果您想获取更多前端技术的知识,欢迎关注我,您的支持将是我分享最大的动力。我会持续输出更多内容,敬请期待。

GoQuery – Go语言的jQuery

习惯了使用 jQuery 的 $(…) 语法来查询和操作 DOM 元素,那换种语言,用 Go 语言该怎么实现呢?来看看 goquery 吧!

HTML网页DOM树

goquery,是 github 上 PuerkitoBio 开源的 Go 语言库,代码仓库在 https://github.com/PuerkitoBio/goquery。goquery 是一个用于查询和操作 DOM 元素的库,并采用了尽可能与 jQuery 相似的语法,以降低学习难度和使用门槛。

Go语言

goquery 需要 Go 1.1 以上版本,使用 go get 直接安装:

目前的版本为 v1.5.1,依赖包括 net/html 和 CSS 选择器 cascadia。

goquery 主要使用了两个结构体 Document (文档) 和 Selection (选择)。Document 代表了一个解析之后的 HTML 文档,而 Selection 则代表了进行查询后得到的 DOM 结点集合。Document 的定义中嵌入了 Selection,故而 Document 可使用 Selection 的方法。

下面给出一个 goquery 的使用例子:

该例子对一个新闻类网站进行了解析,并获取每一条新闻的标题等文本信息。

我们首先使用 net/http 进行 HTTP 请求,得到目标网站的响应。然后,使用了goquery 的 NewDocumentFromReader 来从响应读取并解析得到一个 HTML 文档。NewDocumentFromReader 是这样定义的:

然后,使用 Selection 的 Find 方法进行查找,返回查询结果,对应 jQuery 中的 find 函数:

对于结果集合,使用 Selection 的 Each 方法进行遍历,对应 jQuery 中的 each 函数:

对于遍历的每一项,再次使用 Find 查找子元素,并利用 Text 方法获得元素的文本,对应 jQuery 的 text 函数:

goquery 使用 Go 语言实现了与 jQuery 尽可能相似的查询和操作语法,包括 CSS 选择语法和绝大部分的操作函数,方便熟悉 jQuery 的 Go 语言开发人员快速完成 HTML 文档的解析和查询操作。

goquery库方便了 Go 语言进行网页抓取和解析的工作,使得Go语言在该领域有了门槛较低、使用方便的工具。

goquery库目前已经历了数年的开发,代码质量较高,注释丰富,值得研究学习。

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。