10posts
Q. 古いブラウザ用のアプリでライブラリをアップデートしたら動作しなくなった
Polyfillがアップデートしたライブラリに適用されておらず、古いブラウザで利用できないメソッドが呼び出されランタイムエラーが発生していた。Polyfillを適用する設定を見直すことで対応した。
ページを離れた際に呼ばれるブラウザイベントについて
ページを離れた際に呼ばれるブラウザイベントについて、共有したくなったので改めて少し調査した上でまとめた。
Q. コンポーネントをuseCallbackで作るかスコープ外の関数として切り出すべきか
個人的には出来る限りスコープ外の関数としてコンポーネントを切り出すべきだと考えている。パフォーマンス、コードとしての質、将来性の観点から説明を行った
iOS Safariの音声再生における制限とその回避策の検証
ブラウザでは音声の自動再生を防ぐ目的で、音声の再生が制限されている。この記事では、特に制限が厳しいと言われるiOS Safariについて、その制限と回避策の検証を行った内容をまとめる。
Canvasを使ってカーソルにエフェクトを付与する
Canvas APIを利用してマウスに追従するエフェクトを付与する方法を紹介する。
一部の属性値(data- など)は、型定義がJSXに含まれていなくても型エラーにならない
data-属性やaria-属性などは、型定義がJSXに含まれていなくても型エラーになりません。この理由や型エラーになるケースについて紹介します。
Q. JWTから渡されたBase64文字列をwindow.atob()に渡すとエラーが出る場合がある
JWTをクライアントでデコードする際にエラーが出る場合があると相談を受けた際の調査結果をまとめた。
Q. Day.jsのisValidメソッドの日付判定が緩い
Day.jsのisValidメソッドの判定が緩いのは何故かと質問を受けたので、その理由についてまとめた。
Bits · 29 件
ECMAScript 2026
Ecma の第 131 回総会で ECMA-262 第 17 版が承認された。Array.fromAsync、Error.isError、Math.sumPrecise、Uint8Array の Base64/hex、Iterator.concat、JSON の source アクセス、Map の getOrInsert などが言語に入る。
Chrome 149
CSS ギャップ装飾、bfcache 進入時の WebSocket 切断、Intl.Locale.prototype.variants の追加を含む。
Bun 1.3.12
Bun 1.3.12 がリリースされた。ヘッドレスブラウザ自動化の `Bun.WebView`、ターミナル向け Markdown 描画、`Bun.cron()` の in-process スケジューラなどが追加され、各所の性能改善と互換性修正が含まれる。
Chrome 147
要素スコープの View Transitions、contrast-color()、Math.sumPrecise の追加と、ローカルネットワークアクセス制限の拡張、Device Memory API の取りうる値の更新を含む。
Chrome 146
スクロールトリガーアニメーション、Scoped Custom Element Registry、Sanitizer API、AudioContext.playbackStatsの導入など。
Baseline Newly available: Navigation API・Service Worker modules・:active-view-transition、Baseline Widely available: display multi-keyword・animation-composition・toReversed
Newly: Navigation API・Service Worker の ES modules・:active-view-transition・rcap/rch/rex/ric。Widely: display の multi-keyword・animation-composition・toReversed/toSorted/toSpliced。
Transformers.js v4 Preview公開
WebGPUランタイムの導入による大幅なパフォーマンス向上、Node.js/Bun/Denoでの実行サポート、新しいビルドシステムによる軽量化など。
Vercel、AI SDK 5をリリース
Vercelは、TypeScript/JavaScript向けのオープンソースAIツールキットであるAI SDKのメジャーアップデート、バージョン5をリリース。今回のアップデートでは、フルスタックでのエンドツーエンドな型安全なチャット機能の再設計と、エージェントループを精密に制御するための新しいプリミティブの導入に焦点が当てられている。
ECMAScript 2025 が正式承認
Ecma International の第 129 回総会で ECMAScript 2025 言語仕様が正式に承認され、標準となった。編集者は Shu-yu Guo、Michael Ficarra、Kevin Gibbons が担当。
Chrome 135 リリース
Chrome 135 がリリース。非常に多くの機能追加や変更が行われている。以降ではいくつかピックアップして紹介する。
zx 8.5.0 リリース、コア機能のみの軽量バージョン zx@lite を提供
zx 8.5.0 がリリース。パッケージの提供フローが刷新され、様々な方法でのインストールが可能になった。 またコア機能のみの軽量バージョン zx@lite を提供するようになった。 ### 参考文献
New to the web platform in March
3 月の Web Platform の新機能について、まとめた記事が公開された。
Safari 18.4 リリース
Safari 18.4 がリリース。非常に多くの機能追加や変更が行われている。以降ではいくつかピックアップして紹介する。
React 19.1.0 リリース
React 19.1.0 がリリース。
Bun 1.2.7 リリース
Bun 1.2.7 がリリース。Bun.Cookie、Bun.CookieMap の追加など。 ### 参考文献
Speeding up the JavaScript ecosystem - Rust and JavaScript Plugins
Rust 製ツールの JavaScritp プラグインはデータ転送時のコストに懸念があったが、データ構造を工夫することで十分な高速化を達成した話。
Baseline Newly available: Promise.try
Newly: Promise.try。RUMvision の Baseline 連携や Web Platform Status の年別グループ化など、ツール・エコシステムの動きもあった。
JavaScript Temporal is coming - MDN
Temporal を紹介する記事と、270 ページを超える Temporal についてのドキュメントが MDN で公開。
Google 検索に JavaScript を必須化
Google 検索が JavaScript の実行を要求するようになった。
WinterTC
サーバーサイドの JavaScript ランタイムの相互運用性の向上を目指していた Winter CG が、W3C コミュニティグループから Ecma International に移行し、WinterTC になった。
State of JS 2024
State of JS 2024 の結果が公開された。
New ECMAScript Stage 4 Proposals
2024 年 10 月 12 日の TC39 ミーティングで、Promise.try、Import Attributes、RegExp Modifiers、Sync Iterator helpers、JSON Modulesが Stage 4 になった。
JavaScript Primer v6.0.0
JavaScript Primer v6.0.0 がリリースされた。ECMAScript 2024 の対応が行われ、Node.js のユースケースを新たに増えた node:util の parseArgs 関数や node:test を使うように変更されている。
es-toolkit
es-toolkitは Lodash 互換を目指している。代替ライブラリよりバンドルサイズやパフォーマンスに優れているとされている。
ECMAScript 2024 の仕様が承認
https://github.com/tc39/ecma262/releases/tag/es2024
vlt
npm に代わる新しい JavaScript のパッケージシステム「vlt」を開発している vlt technology に、npm の作者や今まで npm に関わったメンバーが参加したらしい。
Safari 17.4
2024 年 3 月 5 日に Safari 17.4 がリリースされました。
quick-lint-js 3
2024 年 1 月 1 日に quick-lint-js 3 がリリースされました。
ES2023仕様の紹介、Array非破壊操作やHashbang Grammarなどが追加
ECMAScript 2023の新機能紹介。Array find from last、Hashbang Grammar、Change Array by copyなどの追加。