スリム化と高速化を目指した「jQuery 3.0」リリース

 jQuery開発チームは6月9日、JavaScriptライブラリの最新版「jQuery 3.0」を公開した。ajaxを含まない「slim」版を導入、パフォーマンスの改善などが加わっている。

 jQuery 3.0は、2013年4月に公開したjQuery 2.0に続くメジャーリリース。2014年10月から開発を進めてきたという。

 3.0での開発目標はスリム化と高速化。Ajaxおよび関連モジュールを含む通常バージョンに加え、ajax関連技術と非推奨のコードを含まない「slim」バージョンも導入した。通常版のファイルサイズが約30kBであるのに対し、slimバージョンは約23.6kB。npmパッケージとしても提供する。

 速度も強化し、:visibleのようなカスタムセレクタが同一ドキュメントに多数使われているときに追加の作業を省略できるような改善が加わったという。:visibleのケースでは最大17倍の高速化が可能としている。また、古いInternet Explorerをサポートするためのコードを削除し、新たにモダンなWeb APIを活用した。

 jQuery.Deferredをアップデートし、Promises/A+、ES2015 Promisesとの互換性を確保した。これにより、.then()メソッドに変更が加わったとしている。また、promiseオブジェクトに、.then(null, fn)向けのエイリアスとして、promiseオブジェクトにcatch()メソッドが加わった。

 そのほか、バージョン1.8から非推奨となっていたイベントエイリアス(.load、.unload、.error)が削除された。代わりに.on()を利用するよう指示している。アニメーション関連ではrequestAnimationFrameをサポート、requestAnimationFrame APIをサポートするプラットフォームで同APIが利用できるようになった。これによりよりスムーズでCPU時間を消費せず、モバイルでも利用できるアニメーションを作成できるとしている。

 互換性については、2系の継続として後方互換性をできるだけ維持したが、互換性を破る変更もあるという。ほぼすべてがjQuery UIおよびjQuery Mobileとの互換性を維持しているが、一部問題もあると警告しており、次期版で修正するとしている。

 3.0リリースに合わせて、3.0アップデードガイド、jQuery Migrate 3.0プラグインも公開した。開発チームによると、1系の1.12、2系の2.2の両ブランチについては今後も重要なパッチ配布を続けるが、新規機能は追加しないという。ユーザーにバージョン3へのマイグレーションを呼びかけているが、IE 6〜8のサポートが必要なユーザーは最新の1.12ブランチの利用をするようにとしている。

jQuery Foundation
https://jquery.org/