ここで今一度javascriptのランタイムについて整理しておこう
| ランタイム名 | ベースエンジン | 特徴・用途 |
|---|---|---|
| Node.js | V8 | サーバーサイドの定番。豊富なnpmエコシステム、API群が充実 |
| Deno | V8 | セキュリティ強化、TypeScript対応を標準サポートする次世代ランタイム |
| Bun | JavaScriptCore | 高速実行が特徴、Zigで実装。TypeScript対応、Node互換APIも拡充 |
| Nashorn | JVM(Java) | Javaプラットフォーム上のJavaScriptランタイム(既に古い) |
| ChakraCore (Node-ChakraCore) | Chakra | 旧Microsoftのランタイム。Node.js互換バージョンもあった(今は非推奨) |
| QuickJS | 独自エンジン | 軽量で埋め込み向け、小規模プロジェクトやIoT用途に最適 |
| GraalVM JavaScript | GraalVM独自エンジン | 多言語対応VM上のJavaScriptエンジン。Java等と連携可能 |
| ランタイム名 | ベースエンジン | 特徴・用途 |
|---|---|---|
| Node.js | V8 | サーバーサイドの定番。豊富なnpmエコシステム、API群が充実 |
| Deno | V8 | セキュリティ強化、TypeScript対応を標準サポートする次世代ランタイム |
| Bun | JavaScriptCore | 高速実行が特徴、Zigで実装。TypeScript対応、Node互換APIも拡充 |
| Nashorn | JVM(Java) | Javaプラットフォーム上のJavaScriptランタイム(既に古い) |
| ChakraCore (Node-ChakraCore) | Chakra | 旧Microsoftのランタイム。Node.js互換バージョンもあった(今は非推奨) |
| QuickJS | 独自エンジン | 軽量で埋め込み向け、小規模プロジェクトやIoT用途に最適 |
| GraalVM JavaScript | GraalVM独自エンジン | 多言語対応VM上のJavaScriptエンジン。Java等と連携可能 |