JSDoc

JSDocは、JavaScriptのソースコードにアノテーションを追加するために使われるマークアップ言語である。JSDocをコメントの中に含めることで、プログラマーは自分が書いたコードのAPIを記述するドキュメントを追加することができる。JSDocをさまざまなツールで処理することで、HTMLやRich Text Formatなどの形式のアクセス可能なドキュメンテーションを自動生成することができる。JSDocは、Apache License 2.0の元にライセンスされている自由ソフトウェアである。
歴史.
JavaScriptをドキュメントするためにJavadocに似た構文を使用した最初期の使用例は、1999にリリースされたNetscape/MozillaプロジェクトのRhinoである。これは、Javaで書かれたJavaScriptのランタイムシステムである。
JSDocの構文とセマンティックスは、Javaに書かれるコードのドキュメンティングに使われる、Javadocのスキームに似ている。JSDocがJavadocと異なるのは、JavaScriptの動的な振る舞いを扱うために特化している点である。
JSDocタグ.
モダンなJSDocでよく使用されるアノテーションの一部を紹介する。
例.
 * Circle のインスタンスを作成する。
 * @constructor
 * @author: わたし
 * @param {number} r 作成したい円の半径。
function Circle(r) {
 /** @private */ this.radius = r;
 /** @private */ this.circumference = 2 * Math.PI * r;
 * 直径から新しい Circle を作成する。
 * @param {number} d 作りたい円の直径。
 * @return {Circle} 新しい Circle オブジェクト。
Circle.fromDiameter = function (d) {
 return new Circle(d / 2);
 * Circle の円周を計算する。
 * @deprecated
 * @return {number} 円の円周。
Circle.prototype.calculateCircumference = function () {
 return 2 * Math.PI * this.radius;
 * Circle の計算済みの円周を返す。
 * @return {number} 円の円周。
Circle.prototype.getCircumference = function () {
 return this.circumference;
 * Circle の文字列表記を返す。
 * @override
 * @return {string} この Circle のヒューマンリーダブルな表記。
Circle.prototype.toString = function () {
 return "A Circle object with radius of " + this.radius + ".";