1 ポイント 投稿者 GN⁺ 2024-02-08 | 1件のコメント | WhatsAppで共有

jQuery 4.0.0 ベータ公開!

  • jQuery 4.0.0 ベータ版が公開された。長い開発期間を経て、バグ修正、性能改善、いくつかの主要な変更が含まれている。
  • IE 11 未満のバージョンのサポート終了、レガシーコードの整理、使われていない API の削除、複雑な「魔法のような」動作のサポート終了などが含まれる。
  • 最終リリース前にアップグレードガイドを公開する予定で、jQuery Migrate プラグインが移行を支援する見込み。

IE<11 サポート終了

  • jQuery 4.0 は IE 10 以下のサポートを終了する。IE 11 のサポート終了は jQuery 5.0 で段階的に行われる予定。
  • Edge Legacy、iOS 11 未満、Firefox 65 未満、Android Browser など古いブラウザのサポートも終了する。

廃止済み API の削除

  • 複数のバージョンにわたって使われていなかった関数が、今回のメジャーリリースで削除された。これらの関数は内部でのみ使われるか、現在のブラウザでネイティブにサポートされている機能だった。

push, sort, splice の削除

  • jQuery プロトタイプにあった Array メソッドが削除され、今後は jQuery プロトタイプの代わりに Array 関数を使うようになる。

focusinfocusout のイベント順序変更

  • ブラウザ間で focusblur のイベント順序が一致していなかったが、現在は jQuery 4.0 がサポートするすべてのブラウザが一般的な順序で一致している。これは jQuery が以前に採用していた順序と異なるため、主要な変更点となる。

FormData サポートの追加

  • jQuery.ajax が FormData を含むバイナリデータをサポートするようになった。以前はバイナリデータを文字列に変換していたが、今後は自動的に処理される。

自動 JSONP 昇格の削除

  • 以前は jQuery.ajax で dataType: "json" とコールバックが指定されると自動的に JSONP リクエストへ変換されていたが、今後はすべてのサポート対象ブラウザで CORS を使うことが推奨される。

jQuery ソースの ES モジュールへの移行

  • jQuery ソースは AMD から ES モジュールへ移行され、現在は Rollup を使って jQuery をパッケージングしている。

Trusted Types と CSP のサポート

  • jQuery 4.0 は Trusted Types をサポートし、Content Security Policy ディレクティブに違反することなく HTML を jQuery の操作メソッドへの入力として使えるようにする。

更新されたスリムビルド

  • jQuery 4.0.0 のスリムビルドは Deferreds と Callbacks を削除し、さらに小さくなった(圧縮時 20k バイト未満)。

ダウンロード

  • jQuery CDN または npm を通じてファイルを取得できる。

スリムビルド

  • すべてのサポート対象ブラウザ(IE11 を除く)がネイティブ Promise をサポートするため、スリム版は ajax、Deferreds、Callbacks モジュールを除外している。

謝辞

  • 今回のリリースに参加したすべての人々へ感謝を表している。

Mastodon アカウント

  • jQuery は新たに Mastodon アカウントを開設し、今後は Twitter と Mastodon に同時投稿する予定。

変更ログ

  • 完全な変更ログは主要な変更点とともに提供されている。

GN⁺ の意見:

  • jQuery 4.0.0 ベータ版の公開は Web 開発者にとって重要なニュースであり、特に IE 11 未満のサポート終了と ES モジュールへの移行は、現代の Web 開発標準に合わせた大きな変化といえる。
  • 新機能と性能改善は Web アプリケーションの効率向上に寄与し、スリムビルドの縮小は読み込み性能に敏感なプロジェクトで有用だろう。
  • jQuery の Mastodon アカウント開設はソーシャルメディアの多様化を反映し、開発者コミュニティとのコミュニケーションチャネルを広げる前向きな動きといえる。

1件のコメント

 
GN⁺ 2024-02-08
Hacker Newsの意見
  • jQueryの継続的な重要性について

    • WordPressはWebの3分の1以上を占めており、多くのインストール環境やプラグインがjQueryに大きく依存している。
    • jQueryは、DOM選択、属性操作、Ajaxリクエスト、イベント処理、アニメーション、一般的なユーティリティ関数のための安定したツールセットとして、広くサポートされている。
    • jQueryを置き換えられるネイティブ機能はあるが、jQueryほど流暢なAPIではない。
    • サーバーサイドHTMLの上に少しの拡張が必要だが、全面的なJS UIフレームワークまでは不要な作業に対して、jQueryは安定して信頼できるクロスブラウザ互換性を提供する。
  • 個人的なjQuery代替版の開発について

    • 長い間jQuery 4.0を待っていたが、結局自分自身のjQueryを作った。主な違いとしては、CSSを使ったアニメーション、透過的な要素またはリストの使用、インラインスクリプト、独立した動作、依存関係のない単一ファイルで340行未満であることが挙げられる。
  • jQueryの現在の開発状況への疑問

    • 多くの開発者がjQueryを取り除こうと努力している中で、誰が積極的にjQueryを使って開発しているのか疑問に思う。
    • jQueryの機能の大半は現在ネイティブに組み込まれており、querySelectorAllが最も強力な機能の一つである。
  • jQueryを使ったローコードプラットフォーム開発経験

    • ローコードプラットフォームのドラッグ&ドロップエディタをjQueryで構築した。これにはエディタ、すべてのコントロール(つまりUIコンポーネント)が含まれ、生成されるコードも純粋なjQueryである。
    • 大企業の経営陣から、なぜReact/Angularなどを使わないのかとよく質問されるが、jQueryが今なお関連性を持っていると分かってうれしい。
  • jQueryへの愛情表現

    • jQueryチームへの感謝と愛情を表し、jQueryが仕事をやり遂げるうえでシンプルかつ効果的であることを強調している。
  • jQueryの過去の利用経験の共有

    • 過去に、技術リーダーとjQueryをプロジェクトに追加するかどうかで議論した経験。
    • リーダーはライブラリのサイズがページ読み込み時間の負担になると主張したが、結局さまざまなブラウザでAjax呼び出しをサポートするコードを書くことに失敗し、jQueryをプロジェクトに追加した。
  • 2024年にjQueryを使うことへの戸惑い

    • ブラウザがDOM選択をよりよくサポートするようになった中で、2024年にjQueryを使う理由について戸惑いと疑問を表している。
  • jQuery導入初期の経験共有

    • jQueryが最初にリリースされたとき、同僚たちを説得するために社内プレゼンテーションを行った経験を振り返っている。
  • jQuery関連ツールへの思い出

    • DataTablesやX-editableのようなjQuery関連ツールを使っていた経験を、愛着を込めて回想している。