プラグインを多数読み込むようなら影響あるが、jQuery 単体なら人が知覚できるような速度の差はない。
ブロードバンドが普及し、4Gも普及し、今後5Gが普及していく中でjQueryの読み込みで不利になることはほぼ無いと感じている。画像を少しでも圧縮するなどしたほうが圧倒的に効果が高いだろう。
主にDOM取得に差がでてくるけど、数万回処理を繰り返すとかしない限り大した差はないよ10ms単位でのチューニングが求められるような状況じゃない限り、使いやすい方を選択すればいい
厳密に比較すると、環境によってはjQueryが速度不利になるケースは十分あると思います。でも、それがクリティカルな問題に発展することは極めて少ないと思います。ほとんどの場合、jQueryではなく、jQueryの使い手の問題です。これはWPサイトでも同様ですね。外部サイトiframeでいくつも読み込んだり、バージョン違いのjqueryをいくつも読み込んだり、使いもしないライブラリを読み込んだり、使いたいプラグインを好き放題入れたりするもんだから、そりゃ、クリティカルに重くなるよ。問題はシステムやプログラムではなく、使い手のリテラシーです。結果、jQueryは重いねって現象になるんだけどね。
Re:6 好きなライブラリを使えばいいとは思うものの、個人的に、IEなき今、jQueryを使うメリット(時短)は、ほぼないと思う。ほぼほぼ素のJSで書ける。$("#hoge")って書けるのを、document.getElementById("hoge")って書くの面倒だねってくらいで。そんなものは、エディタの自動補完でどうにでもなるよね。
Re:7 そうか? $().on() とか $.ajax を vanilla でやろうとすると結構めんどくさいが。あとアニメーション。CSS3 で代替できるが、jQuery のがラク。
Re:8 その程度なら、スニペットなり、自分なりの自作関数でなんとでもなるんじゃないかな。あと、jQueryの動作は特別速度不利にならないとは書いたけど、根本的にJSによるアニメーションとCSSアニメーションのパフォーマンスの差は、かなりあると思うよ。JSアニメーションでしか表現できないものなら別だけど、簡単なエフェクトなら、クラススイッチするだけだから、むしろCSSアニメーションの方が楽じゃないかと。
reactとかvirtual dom系のライブラリ使ってなくて、コーポレート的な普通のサイトでjsを30行以上書くならjQuery使った方がいい。と自分は思う。
> jQueryは処理速度等の軽量化の観点から出来れば使わない方がいいホントその通りで10年位言われてるけど、まともな代替案はない。jQueryだけ目の敵にされがちだけど、「PythonよりC++の方が早いからPythonやめましょう」って言うくらい愚かなことだと私は感じています。> それらの軽量化がクリティカルになることってあるのでしょうか?3G、ケーブルテレビ、ISDN&ADSL(2024年に廃止)利用なら(笑)
$一つで属性指定やらネストの対応できるのは何だかんだで便利wpでブログ作るレベルであれば普通に使う
11 件の回答
プラグインを多数読み込むようなら影響あるが、jQuery 単体なら人が知覚できるような速度の差はない。
ブロードバンドが普及し、4Gも普及し、今後5Gが普及していく中でjQueryの読み込みで不利になることはほぼ無いと感じている。画像を少しでも圧縮するなどしたほうが圧倒的に効果が高いだろう。
主にDOM取得に差がでてくるけど、数万回処理を繰り返すとかしない限り大した差はないよ
10ms単位でのチューニングが求められるような状況じゃない限り、使いやすい方を選択すればいい
厳密に比較すると、環境によってはjQueryが速度不利になるケースは十分あると思います。
でも、それがクリティカルな問題に発展することは極めて少ないと思います。
ほとんどの場合、jQueryではなく、jQueryの使い手の問題です。
これはWPサイトでも同様ですね。
外部サイトiframeでいくつも読み込んだり、バージョン違いのjqueryをいくつも読み込んだり、使いもしないライブラリを読み込んだり、使いたいプラグインを好き放題入れたりするもんだから、そりゃ、クリティカルに重くなるよ。問題はシステムやプログラムではなく、使い手のリテラシーです。
結果、jQueryは重いねって現象になるんだけどね。
Re:6
好きなライブラリを使えばいいとは思うものの、個人的に、IEなき今、jQueryを使うメリット(時短)は、ほぼないと思う。ほぼほぼ素のJSで書ける。
$("#hoge")って書けるのを、document.getElementById("hoge")って書くの面倒だねってくらいで。
そんなものは、エディタの自動補完でどうにでもなるよね。
Re:7
そうか? $().on() とか $.ajax を vanilla でやろうとすると結構めんどくさいが。あとアニメーション。CSS3 で代替できるが、jQuery のがラク。
Re:8
その程度なら、スニペットなり、自分なりの自作関数でなんとでもなるんじゃないかな。
あと、jQueryの動作は特別速度不利にならないとは書いたけど、根本的にJSによるアニメーションとCSSアニメーションのパフォーマンスの差は、かなりあると思うよ。JSアニメーションでしか表現できないものなら別だけど、簡単なエフェクトなら、クラススイッチするだけだから、むしろCSSアニメーションの方が楽じゃないかと。
reactとかvirtual dom系のライブラリ使ってなくて、コーポレート的な普通のサイトでjsを30行以上書くならjQuery使った方がいい。
と自分は思う。
> jQueryは処理速度等の軽量化の観点から出来れば使わない方がいい
ホントその通りで10年位言われてるけど、まともな代替案はない。
jQueryだけ目の敵にされがちだけど、
「PythonよりC++の方が早いからPythonやめましょう」
って言うくらい愚かなことだと私は感じています。
> それらの軽量化がクリティカルになることってあるのでしょうか?
3G、ケーブルテレビ、ISDN&ADSL(2024年に廃止)利用なら(笑)
$一つで属性指定やらネストの対応できるのは何だかんだで便利
wpでブログ作るレベルであれば普通に使う