Wikipediaのcommon.jsなどのJavaScriptについては「Wikipedia:カスタムJS」または「プロジェクト:ウィキ技術部/共通スクリプト」を参照
CommonJSとは、サーバーサイドなどのウェブブラウザ環境外におけるJavaScriptの各種仕様を定めることを目標としたプロジェクトである。 CommonJSプロジェクトは元々、2009年1月にMozillaのエンジニアKevin DangoorによりServerJSプロジェクトとして立ち上げられた[1]。 「What I’m describing here is not a technical problem. It’s a matter of people getting together and making a decision to step forward and start building up something bigger and cooler together.」 ? Kevin Dangoor[1] 2009年8月、プロジェクトはより広い範囲のAPIを対象とすることを示すために、現在のCommonJSへと改名された[2]。仕様の作成と採用はオープンプロセスで進められた。仕様は複数の実装が完了した後、最終的に確定とされた[3]CommonJSはECMAScriptの仕様を定めるEcmaインターナショナルのTC39グループとは直接関係はないが、TC39のメンバーの一部はCommonJSプロジェクトに参加している。[4]。 2013年5月、Node.jsのパッケージマネージャーnpmの作者であるIsaac Z. Schlueterは、CommonJSはNode.jsにとって時代遅れになりつつあり、Node.jsの主要開発者はCommonJSから離れていると語った[5]。 CommonJSで定められた仕様としては以下のようなものがある[6] なおModuleとPromiseについては、後に2015年のECMAScript 6で標準規格が定められている。[※ 1]。
歴史
仕様
現行body:not(.skin-minerva) .mw-parser-output .columns-list__wrapper{margin-top:0.3em}body:not(.skin-minerva) .mw-parser-output .columns-list__wrapper>ul,body:not(.skin-minerva) .mw-parser-output .columns-list__wrapper>ol{margin-top:0}body:not(.skin-minerva) .mw-parser-output .columns-list__wrapper--small-font{font-size:90%}
Modules/1.0 (Modules/1.1で廃止)
Modules/1.1
Modules/1.1.1
Packages/1.0
Promises/B
Promises/C
System/1.0
提案
Binary/B
Binary/F
Console
Encodings/A
Filesystem/A
Filesystem/A/0
Modules/Async/A
Modules/Transport/B
Packages/1.1
Packages/Mappings
Unit Testing/1.0
実装
Akshell[7]
Common Node[8]
CommonJS Compiler - ブラウザ環境でCommon JSモジュールを使うためのコマンドラインツール[9]
CommonJS for PHP - PHP 5.3以降用の軽量CommonJS実装[10]
CouchDB[11]
Flusspferd[12]
GPSEE[13]
Jetpack
Joyent Smart Platform[14]
JSBuild[15]
MongoDB[16]
Narwhal[17]
Node.js[18]
Persevere[19]
PINF JavaScript Loader[20]
RingoJS[21]
SilkJS[22]
SproutCore