首页 >web前端 >js教程 >抛弃 jQuery 拐杖,拥抱 Vanilla JS

抛弃 jQuery 拐杖,拥抱 Vanilla JS

Patricia Arquette
Patricia Arquette原创
2024-12-05 19:39:10905浏览

Ditch the jQuery Crutch and Embrace Vanilla JS

jQuery 曾经是前端开发的首选库,简化了 DOM 操作和 AJAX 请求等任务。然而,在当今世界,jQuery 通常是不必要的,因为现代 JavaScript 已经发展到可以更有效地处理这些任务。
让我们仔细看看为什么你应该放弃 jQuery 并拥抱 Vanilla JS,以获得更好的性能、更简洁的代码和面向未来的技能。


为什么不再需要 jQuery❓

1。 Vanilla JS 拥有您需要的所有工具
当 jQuery 首次流行时,它填补了原生 JavaScript 不那么强大或易于使用的空白。然而,现代 JavaScript(ES6 及更高版本)引入了许多功能来实现 jQuery 过去的功能。

例如,原生 JavaScript 现在包括:

  • 查询选择器:document.querySelector() 和 document.querySelectorAll()。
  • 事件处理:addEventListener().
  • AJAX 请求:用于网络请求的 fetch() API。
  • 动画:CSS 过渡/动画和 JavaScript requestAnimationFrame()。

现在,您不需要依赖 jQuery 来处理这些常见任务。

2。性能很重要
添加到项目中的每个额外库都会增加文件大小和 HTTP 请求数量,从而降低网站速度。 jQuery 添加了大约 90KB 的额外代码(压缩后)。虽然这看起来很小,但它可以累积起来,尤其是在移动网络上。
现代浏览器支持原生 JavaScript 功能,因此不需要 jQuery 的开销。通过切换到 Vanilla JS,您可以使您的网站变得更轻、更快。

3。现代浏览器支持您所需的一切
过去,jQuery 帮助确保跨浏览器兼容性。但到 2024 年,大多数现代浏览器原生支持 JavaScript 功能,包括 querySelector()、fetch() 和 addEventListener()。浏览器的不断更新已经不再需要 jQuery 的“shim”功能来修复不兼容性。现在,您可以放心地使用本机 JavaScript,因为知道它将在主要浏览器中一致地工作。

4。更好的长期维护
放弃 jQuery 最容易被忽视的原因之一是代码库的长期维护。虽然 jQuery 在短期内简化了任务,但它增加了另一层抽象。随着项目的增长,将 jQuery 作为依赖项可能会导致调试过程中的混乱和挑战,特别是对于可能不熟悉该库的新开发人员而言。

使用 Vanilla JS 意味着您要坚持该语言的基础知识,从而获得更干净、更易于维护的代码,并且不需要在其之上学习库。


jQuery 与 Vanilla JS:快速比较
以下是您在 jQuery 和 Vanilla JS 中可能遇到的一些最常见任务的直接比较:

1。 DOM 操作
jQuery:

$('#my-button').click(function() {
  $(this).hide();
});

原版 JS:

document.querySelector('#my-button').addEventListener('click', function() {
  this.style.display = 'none';
});

理论:jQuery 隐藏了添加事件监听器和操作 DOM 所涉及的一些复杂性。然而,使用现代 JavaScript,我们可以访问像 querySelector() 和 addEventListener() 这样的简单方法,它们提供了对 DOM 的更直接的控制。

2。 AJAX 请求
jQuery:

$.ajax({
  url: 'https://api.example.com/data',
  method: 'GET',
  success: function(response) {
    console.log(response);
  }
});

原版 JS:

fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error(error));

理论:jQuery 的 AJAX 方法抽象了发出网络请求的复杂性,但 fetch() API 现在内置于浏览器中,并且更加现代和强大。它还可以更好地与 Promises 和异步操作配合使用,这是现代 JavaScript 工作流程的核心。

3。事件处理
jQuery:

$('#my-button').on('click', function() {
  alert('Button clicked!');
});

原版 JS:

document.querySelector('#my-button').addEventListener('click', function() {
  alert('Button clicked!');
});

理论:jQuery 的 .on() 方法很有用,但会带来不必要的开销。原生 JavaScript 的 addEventListener() 不仅速度更快,而且允许您执行更高级的操作,例如将多个事件处理程序附加到同一元素。

4。动画
jQuery:

$('#my-box').fadeOut();

原版 JS:

document.querySelector('#my-box').style.transition = 'opacity 0.5s';
document.querySelector('#my-box').style.opacity = '0';

理论:jQuery 简化了动画,但 CSS 过渡和动画提供了更好的性能。它们由浏览器的渲染引擎处理,从而产生更平滑的效果。 Vanilla JS 可用于控制和触发 CSS 动画,从而实现更好的关注点分离和更快的渲染。


关键要点?
最后,jQuery 是过去游戏规则的改变者。但随着 JavaScript 和现代浏览器生态系统的快速发展,新项目中不再需要它。通过拥抱 Vanilla JS,您将:

  • 让您的代码库更轻、更快。
  • 让您的网站从长远来看更易于维护。
  • 精通核心 JavaScript,它适用于所有现代框架(如 React、Vue、Angular 等)。

那么,你真的需要 jQuery吗❓
简而言之:不会。Vanilla JS 是现代前端开发的更好、更精简、更高效的选择。它为您提供所需的所有工具,而无需额外费用,并且可以让您的网站平稳快速地运行。 jQuery 的时代已经过去了,是时候拥抱未来了——没有拐杖的 JavaScript。
希望这个博客可以帮助您为您的项目做出明智的决定。

“感谢您的阅读,继续编码!”❤

以上是抛弃 jQuery 拐杖,拥抱 Vanilla JS的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn