内容简介:许多人提倡“只使用vanilla JavaScript,你不需要jQuery”。其实我觉得许多JavaScript API - 特别是DOM API - 很糟糕。 el.insertAdjacentElement('afterend', other)无疑是有效的,但$(el).after(other)实际上是方便的,比DOM给我们的要好得多。标准JavaScript API中的许多常见操作都很尴尬;,你仍然需要辅助函数来执行各种常见任务。
许多人提倡“只使用vanilla JavaScript,你不需要jQuery”。
其实我觉得许多JavaScript API - 特别是DOM API - 很糟糕。 el.insertAdjacentElement('afterend', other)无疑是有效的,但$(el).after(other)实际上是方便的,比DOM给我们的要好得多。
标准JavaScript API中的许多常见操作都很尴尬;,你仍然需要辅助函数来执行各种常见任务。
添加任何依赖性都带来了复杂性和文件大小的成本,但jQuery并不是那么大:默认构建是30K缩小/压缩,如果没有ajax的自定义构建和不常见的只有大小23K,使用querySelector而不是SizzleJS的构建是17K 。原来的30K和优化的17K对于我来说似乎都是可以接受的。
你可以看一下 Bootstrap删除jQuery 的例子,说明使用vanilla JS需要付出多少努力:他们编写了自己的帮助器,不得不放弃IE支持,因为它太难添加,使得API不兼容(“我们打破了一切“),我花了一年半的时间研究它。如果我看一下最终结果,我真的不能说它好多了。
我理解他们为什么这样做; 人们想使用Bootstrap和Vue.js等等,使用Vue.js和jQuery有点傻。我非常赞成减少“网络臃肿” ,但我们需要务实和现实。包括~17K的jQuery真的那么糟糕吗?
有一些很好的理由不使用jQuery:如果你正在编写你想要被其他人重用的代码,或者你只是编写一个小函数。
使用“jQuery所有的东西”可能不是一个好主意,但也不是 “unjQuery所有的东西”。
我没有和jQuery结婚,我很乐意使用一个“jQuery light”,它可以修复JS API,更加可口。YMNJQ推荐使用 bonzo 和 $ dom ,还有其他几个用于AJAX等等,但许多似乎没有维护。此外,每个人都已经知道了jQuery。为什么要用其他东西替换它,除非有令人信服的理由?
有些读者可能会想“关于Vue.js,React或其他一些现代框架呢?”这篇文章的目的是将vanilla JavaScript与jQuery进行比较,而不是提出一个Grand Unified Theory of Frontend Development 。
话虽如此,我认为有几个理由坚持使用简单的JavaScript; 主要是因为我想构建快速的网页,使用最简单的可行代码,并尽可能多的人访问。根据我的经验,服务器端生成的模板轻轻地撒上“渐进增强”风格的JavaScript通常是最好的方法。它通常更容易开发,往往更快,往往有更少的错误。
从根本上说,我认为网络是一个查看文档而不是操作系统的系统。即使对于许多“网络应用程序”(无论你的意思是什么),文档方法都能很好地工作。
以上所述就是小编给大家介绍的《为什么我在2019年仍在使用jQuery?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- RecyclerView使用指南(一)—— 基本使用
- 如何使用Meteorjs使用URL参数
- 使用 defer 还是不使用 defer?
- 使用 Typescript 加强 Vuex 使用体验
- [译] 何时使用 Rust?何时使用 Go?
- UDP协议的正确使用场合(谨慎使用)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
构建高性能Web站点
郭欣 / 电子工业出版社 / 2009-8 / 59.00元
本书围绕如何构建高性能Web站点,从多个方面、多个角度进行了全面的阐述,涵盖了Web站点性能优化的几乎所有内容,包括数据的网络传输、服务器并发处理能力、动态网页缓存、动态网页静态化、应用层数据缓存、分布式缓存、Web服务器缓存、反向代理缓存、脚本解释速度、页面组件分离、浏览器本地缓存、浏览器并发请求、文件的分发、数据库I/O优化、数据库访问、数据库分布式设计、负载均衡、分布式文件系统、性能监控等。......一起来看看 《构建高性能Web站点》 这本书的介绍吧!