統計によると、jQueryのグローバルWebサイトの使用率は依然として高いです。しかし、Web テクノロジーの近代化により jQuery が疎外され、多くの人が jQuery は時代遅れであり、もう使用することを検討する必要がないと直接信じていることは議論の余地のない事実です。このような人々は jQuery をほとんど使用しない、または使用しない可能性がありますが、jQuery を使用しない場合でも議論の余地はあります。
まず第一に、最新のフロントエンド UI の開発において、jQuery は確かに以前の利点を失いました。Web 標準が成熟するにつれて、互換性や一貫性をあまり考慮する必要がなくなり、DOM 操作 API も置き換えられました。テクノロジー市場 (MVVM など) では、UI 関数の開発を宣言的に自動化できます。
実際、ツールの使い方を学ぶかどうか (新しいプロジェクトで使用するかどうか) には、多くの要素を考慮する必要があります。 jQuery に関しては、まだ学習して使用する余地があると思います。
商用プロジェクト用のテクノロジー スタックを選択する場合は、投入コストと収益率の両方を考慮する必要があります。 jQuery の使用に反対する人は一般に、jQuery が古くなって学習しても使用されなくなるのではないかと心配し、開発効率にも疑問を抱いています。どのようなテクノロジーも時代遅れになるものであるため、予測可能なプロジェクトでは、テクノロジーが時代遅れであるかどうかは考慮すべき主な要素ではありません。主に考慮すべきは、学習、開発、保守にかかるコストと収益率です。
すべてのツールには学習コストと、使用時の適用性があります。ネイティブ DOM と React の学習コストは決して低くなく、独自の適用範囲もあります。
実際、jQuery は DOM 操作用のツール ライブラリです。開発効率を向上させるには、ネイティブ プロジェクトまたは React プロジェクトにカスタマイズされたツール ライブラリが必要です。ネイティブ操作は非常に原始的であるため、React の抽象化はすべての対話型機能のニーズには適していません。
jQuery を使用するかどうかは、プロジェクトの性質と特定の開発タスクによって異なります。現時点では、データ対話機能がほとんどない一部の中小規模のプロジェクトでは、jQuery を使用することによる投資収益率は良好になるはずです。
使い方の観点に加えて、学習の観点からも、jQueryの使い方やソースコードを勉強することはやはり改善に役立つというのが私の見解です。 JS レベルとフロントエンド レベル。ヘルプ。
以下は、Atypic チームがまとめた jQuery を使用するいくつかの理由#の簡単な翻訳です。
##まず、jQurey の DOM ノード セレクターはネイティブのものよりも強力ですノード クエリ タスク を指します。これらの部分セレクター構文は CSS 標準には含まれていません。例: 疑似クラス :visible:
$('a[href^="http://"]:visible')
http:// であるすべての
a# を選択します。 ##ラベルが表示されます。 このような高度なクエリが多数ある場合、ネイティブ クエリでは満たすことができません (多数のプリミティブな操作を記述する必要があります)。jQuery を使用しない場合は、それを自分でカプセル化する必要があります。
jQurey构造函数($()
)创建并返回一个 jquery对象,这个对象实例的所有 DOM 操作方法 都会修改当前实例后返回它(新的修改过后jquery实例)注1,这样,多个 DOM操作 就可以连写在一起,这就是有名的 链式语法。例如
$('a[href^="http://"]').addClass(‘insecure').attr('target', '_blank');
以上语句 选中的DOM节点 执行了两次操作:添加样式类(insecure)和属性(target)。如果用原生 得这么写:
const insecure_links = document.querySelector(‘a[href^=“http://“]’); insecure_links.classList.add(‘insecure’); insecure_links.addAttribute(’target’, ‘_blank’);
这里比较明显的看出jQuery的优势。
jQuery对象的DOM操作方法默认是批量处理,无论是你选一个或是多个;但是如果是 多个,原生必须使用 querySelectorAll,并且选中后还要手动循环处理每个节点:
const insecure_links = document.querySelectorAll(‘a[href^=http://“]’); for (let i = 0; i < insecure_links.length; i++) { insecure_links[i].classList.add(‘insecure’); insecure_links[i].addAttribute(’target’, ‘_blank’); }
无论是一个 还是多个,jQuery 都是一条语句(没变化):
$('a[href^="http://"]').addClass('insecure').attr('target', '_blank');
jQuery 一个中间变量都不用,代码简洁易读,这就是效率。
现代浏览器普及率已经相当不错,但不绝对,且如果你有老项目需要维护,目前还是有学用jQuery的必要。如果你想用最新技术,又不得不维护兼容性,则得自己处理兼容问题,这可能不比直接使用 jQuery 更有效率。尤其是 AJAX 和 事件检测 这两个 兼容问题。
大家都很喜欢 jQuery的一个点,是它有很多 非常有用 的插件。这些插件 不但多样,且成熟。一个典型例子就 是轮播插件(carousel)。不使用插件,要我们自己写一个,我们得花一到两个工作日,轮播展示功能 很复杂。
使用jQuery,则有多种 轮播插件可选择,灵活且成熟,可满足任何 轮播展示的需求。
以上理由都为了——开发者效率,而效率要靠专注,需要抽象来维护一个较小的工作环境,忽略不必要的细节。jQuery 的抽象 是有效率的。
不过,就是因jQuery是有抽象的,也作为一种依赖是有大小的,所以,会有性能(运行和加载)损耗。这些都是 项目成功 的可能因素 。
原文地址:https://nakeman.cn/blog/reasons-why-we-still-use-jquery/%EF%BC%89
更多编程相关知识,请访问:编程教学!!
以上がなぜ今でも jQuery を使用するのでしょうか?理由分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。