JavaScript31 件の記事

JavaScript の記事

TypeScript 7.0 正式リリース - Go製ネイティブコンパイラで約10倍速、6.0からの移行の要点

TypeScript 7.0 正式リリース - Go製ネイティブコンパイラで約10倍速、6.0からの移行の要点

9

2026年7月8日、TypeScript 7.0が正式リリースされました。Project Corsaとして進んできたGo製ネイティブコンパイラがついに本流となり、vscodeリポジトリのコンパイルは125.7秒から10.6秒(11.9倍)、エディタのファイルオープンは17.5秒から1.3秒未満に短縮。--checkers/--buildersによる並列化制御、Parcel系ウォッチャーで刷新された--watch、Unicode対応の改善、strict既定化などの設定変更、@typescript/typescript6(tsc6)によるTS6併存、Vue/Astro/Svelte等の埋め込み系ツールが7.1を待つべき理由まで、公式アナウンスを一次ソースに整理します。

浮動小数点数 (IEEE 754) 入門 - なぜ 0.1 + 0.2 は 0.3 にならないのか

浮動小数点数 (IEEE 754) 入門 - なぜ 0.1 + 0.2 は 0.3 にならないのか

13

プログラマが必ず一度はハマる二進浮動小数点の誤差を、IEEE 754 を一次ソースに解説します。なぜ十進の 0.1 が二進で正確に表せず 0.1 + 0.2 が 0.30000000000000004 になるのか、符号・指数部・仮数部の構成、単精度 (binary32) と倍精度 (binary64) のビット配分、特殊値 (無限大・NaN・非正規化数)、既定の最近接偶数丸めと機械イプシロン、そして等値比較を避ける・金額は整数で扱うといった実務の対処までをまとめます。

Bun のコアが Zig から Rust へ - Claude が6日で約100万行を書き換えた話(安定版はまだZig)

Bun のコアが Zig から Rust へ - Claude が6日で約100万行を書き換えた話(安定版はまだZig)

8

JavaScript ランタイム Bun が、コアを Zig から Rust へ書き換える巨大 PR(#30412、約100万行追加・6,755コミット)を2026年5月14日に main へマージしました。Anthropic の Claude Code(dynamic workflows)でほぼ全自動生成され、人手なら約1年の作業が約6日で完了したとされます。ただし安定版は今もZig実装で、Rust版は canary 提供。書き換えの理由(Zigのno-AIポリシー・Rustのコミュニティ・メモリ安全性)、unsafeブロック1.3万個などの論争点、AI駆動開発の意味までを一次ソースで整理します。

タイムゾーンと日付の正しい扱い方 - UTC・ISO 8601・夏時間の罠と JavaScript Date

タイムゾーンと日付の正しい扱い方 - UTC・ISO 8601・夏時間の罠と JavaScript Date

9

日付とタイムゾーンの扱いを実務目線で整理します。UTC とオフセットとIANAタイムゾーン(Asia/Tokyo)の違い、ISO 8601 / RFC 3339 の推奨フォーマット、Unixエポック、JavaScript の Date のハマりどころ(月が0始まり・日付のみ文字列はUTC解釈・getTimezoneOffsetの符号)、夏時間(DST)で生じる「存在しない時刻」と「重複する時刻」、そして「保存はUTC・表示時に変換・IANA識別子で扱う」などのベストプラクティスを、MDN・RFC 3339・IANA を一次ソースにまとめます。

Node.jsが年1回のメジャーリリースへ - Node 27からの新スケジュールとLTSの考え方

Node.jsが年1回のメジャーリリースへ - Node 27からの新スケジュールとLTSの考え方

7

Node.js が 2026年3月の公式発表でリリーススケジュールを変更します。Node 27(2027年)から、メジャーは年1回(毎年4月)に集約され、奇数/偶数の区別を廃止して全リリースが LTS 対象に。早期テスト用の Alpha チャンネル新設、総サポート期間の36か月化など、新旧スケジュールの違いと、Node 26 / Node 27 の位置づけ、運用への影響を Node.js 公式ブログを一次ソースに整理します。

ES2026(ECMAScript 2026)の新機能 - Math.sumPrecise から Uint8Array の Base64 まで

ES2026(ECMAScript 2026)の新機能 - Math.sumPrecise から Uint8Array の Base64 まで

11

ES2026(ECMAScript 2026・第17版)で標準入りする新機能を、TC39 の確定リスト(finished-proposals)と公式仕様スナップショットを一次ソースに整理します。Math.sumPrecise、Error.isError、Iterator.concat、Map/WeakMap の getOrInsert(Upsert)、Uint8Array の Base64/Hex 変換、JSON.parse の source アクセスと JSON.rawJSON、Array.fromAsync の7機能をコード例つきで解説。さらに「using(明示的リソース管理)は ES2026 ではない」「RegExp.escape は ES2025」といった版の取り違えや、MDN の版表記の注意点まで扱います。

JavaScriptの非同期とイベントループ - Promise・async/await・マイクロタスクの順序を理解する

JavaScriptの非同期とイベントループ - Promise・async/await・マイクロタスクの順序を理解する

11

JavaScriptの非同期処理を、イベントループの仕組みから整理します。コールスタック・タスク(マクロタスク)・マイクロタスクの関係、setTimeout と Promise.then の出力順、Promise の状態と all/allSettled/race/any の違い、async/await の本質と直列・並列、forEach 内 await が効かない罠やエラーの握りつぶし、そしてブラウザと Node.js(process.nextTick)の違いまで、MDN と Node.js 公式を一次ソースにコード例つきで解説します。

TypeScript 6.0 の新機能と破壊的変更 - JavaScript製で書かれる最後のコンパイラ

TypeScript 6.0 の新機能と破壊的変更 - JavaScript製で書かれる最後のコンパイラ

11

TypeScript 6.0(2026年3月23日リリース)を公式アナウンスとリリースノートをもとに整理します。6.0 が「JavaScript製の最後のコンパイラ」であり 7.0(Go製・Project Corsa)へのブリッジである位置づけ、this を使わない関数の推論改善・#/ サブパスインポート・es2025 lib・Temporal 型などの新機能、そして strict や module/target の既定値変更、amd/umd や outFile の削除、module 名前空間構文や import assert の廃止といった破壊的変更、ignoreDeprecations や stableTypeOrdering による移行までを一次ソースでまとめます。

文字コードと UTF-8 / Unicode の基礎 - 文字化けの原因と、length が合わない理由

文字コードと UTF-8 / Unicode の基礎 - 文字化けの原因と、length が合わない理由

11

文字コードを実務目線で整理します。Unicode(文字集合・コードポイント)と UTF-8/UTF-16(符号化方式)の違い、UTF-8 の可変長バイト構造、JavaScript の文字列が UTF-16 ベースゆえに String.length が見た目の文字数と合わない理由、結合文字・絵文字・正規化(NFC/NFD)、そして文字化けの典型原因(エンコーディング不一致・MySQL の utf8 と utf8mb4・BOM・meta charset)と対策まで、Unicode 公式・RFC 3629・WHATWG を一次ソースにまとめます。

タービュレントディスプレイスを JS で実現する - SVG フィルタとシェーダで作る乱流ゆがみ

タービュレントディスプレイスを JS で実現する - SVG フィルタとシェーダで作る乱流ゆがみ

14

After Effects の Turbulent Displace(タービュレントディスプレイス)を Web/JavaScript で再現する方法を整理します。実は SVG の feTurbulence + feDisplacementMap がほぼそのままの等価機能で、Amount/Size/Complexity/Evolution といった AE のパラメータが SVG 属性に対応します。インタラクティブデモ、画像や DOM への CSS filter 適用、requestAnimationFrame による Evolution アニメーション、そして自由度の高い WebGL/GLSL シェーダ版・Canvas 版まで、MDN を一次ソースにまとめます。

正規表現 実践入門 - よく使うパターンと、ReDoS などの落とし穴

正規表現 実践入門 - よく使うパターンと、ReDoS などの落とし穴

9

正規表現を実務目線で整理します。文字クラス・量指定子・アンカー・グループといった基本、キャプチャ/非キャプチャ/名前付きグループ、先読み・後読み、貪欲と非貪欲、フラグの違い、そして ReDoS(壊滅的バックトラッキング)やメールアドレス完全正規表現の誤謬、HTML を正規表現でパースしてはいけない理由まで、MDN を一次ソースに「使うべきでない場面」も含めてまとめます。

Node.js 26 の注目点 - Temporal 既定有効と「ビルドなしTS実行」の現在地

Node.js 26 の注目点 - Temporal 既定有効と「ビルドなしTS実行」の現在地

8

2026年5月リリースの Node.js 26 を整理します。長く待たれた Temporal API のデフォルト有効化、type stripping によるビルドなし TypeScript 実行の安定化(と --experimental-transform-types の削除が意味すること)、V8 14.6・Undici 8 への更新、レガシー stream モジュールの削除など、移行前に押さえておきたい差分をまとめます。

Deno 2.7 の注目点 - Temporal API 安定化、Windows ARM、package.json overrides

Deno 2.7 の注目点 - Temporal API 安定化、Windows ARM、package.json overrides

6

2026年2月リリースの Deno 2.7 を整理します。長年待たれた Temporal API の安定化、Windows ARM ネイティブ対応、package.json の overrides による依存固定、brotli 圧縮ストリーム、自己展開する compile バイナリなど、JavaScript ランタイムとしての成熟点をまとめます。

Anthropic が Bun を買収した理由 - 10億ドル製品 Claude Code が依存するランタイムを自社化する

Anthropic が Bun を買収した理由 - 10億ドル製品 Claude Code が依存するランタイムを自社化する

6

2025年12月、AnthropicがJavaScriptランタイム Bun を買収しました。Claude Code が bun build --compile の単一実行ファイルとして配布されている事実と、公開6ヶ月でランレート10億ドルに達した背景から、AI企業がランタイムを抱える戦略的な意味を整理します。

Remix の歩みと Remix 3 - React Router マージから Preact ベース再始動まで、モジュラーツールキットへの転換

Remix の歩みと Remix 3 - React Router マージから Preact ベース再始動まで、モジュラーツールキットへの転換

21

Remix(remix.run)のこれまでの歩みを、React Router の歴史・Shopify による買収・React Router v7 へのマージ・「Wake up, Remix!」での再始動という流れで整理しつつ、Preact フォークをベースに「依存ゼロ」「モジュラーツールキット」を志向する Remix 3 の新機能と変更点(v3.0.0-beta.0 まで)を解説します。

【サプライチェーン攻撃】2026年3月31日、npmパッケージ「axios」乗っ取り事件の全容と対策

【サプライチェーン攻撃】2026年3月31日、npmパッケージ「axios」乗っ取り事件の全容と対策

17

週1億ダウンロードを誇るnpmパッケージ「axios」が、北朝鮮系脅威アクターによって乗っ取られた事件を解説。攻撃の手口、影響を受けたバージョン、自分のプロジェクトの確認方法、今後の防御策をまとめます。

【緊急】npm パッケージ「axios」が乗っ取られた事件まとめ — 2026年3月31日のサプライチェーン攻撃

【緊急】npm パッケージ「axios」が乗っ取られた事件まとめ — 2026年3月31日のサプライチェーン攻撃

13

2026年3月31日、週間1億ダウンロードを超える人気パッケージ「axios」のnpmアカウントが乗っ取られ、悪意あるバージョン1.14.1と0.30.4が公開されました。攻撃の全容、影響を受けるバージョンの確認方法、今後の防御策をまとめます。

Motion(旧 Framer Motion)ガイド - React向け高性能アニメーションライブラリ

Motion(旧 Framer Motion)ガイド - React向け高性能アニメーションライブラリ

33

Motion(旧 Framer Motion)の基本から応用まで解説。motion.div、variants、AnimatePresence、useScroll、ドラッグ、レイアウトアニメーションなど、実践的なデモとともに紹介します。独立プロジェクト化に伴う名称・パッケージ移行(framer-motion から motion へ、import は motion/react)にも対応。