JavaScriptドメイン

Added in version 1.0.

JavaScriptドメイン(js)は次のようなディレクティブを提供します:

.. js:module:: name

This directive sets the module name for object declarations that follow after. The module name is used in the global module index and in cross references. This directive does not create an object heading like py:class would, for example.

By default, this directive will create a linkable entity and will cause an entry in the global module index, unless the no-index option is specified. If this option is specified, the directive will only update the current module name.

Added in version 1.6.

バージョン 5.2 で変更: Module directives support body content.

.. js:function:: name(signature)

JavaScriptの関数やメソッドの説明をします。オプショナルな引数を説明したい場合には、Pythonシグニチャのために 説明したように 角カッコを使用します。

引数や期待される型、関数から投げられるエラー、returnで返される値などのフィールド情報の詳細を書くこともできます:

.. js:function:: $.getJSON(href, callback[, errback])

   :param string href: An URI to the location of the resource.
   :param callback: Gets called with the object.
   :param errback:
       Gets called in case the request fails. And a lot of other
       text so we need multiple lines.
   :throws SomeError: For whatever reason in that case.
   :returns: Something.

次のようにレンダリングされます:

$.getJSON(href, callback[, errback])
引数:
  • href (string()) -- リソースの場所を示すURI。

  • callback -- このオブジェクトのコールバック

  • errback -- リクエストが失敗した時のコールバック。また、他のたくさんの文字情報。従って、複数行が必要となります。

例外:

SomeError() -- その場合のなにかの理由

戻り値:

なにか

:single-line-parameter-list: (no value)

Ensures that the function's parameters will be emitted on a single logical line, overriding javascript_maximum_signature_line_length and maximum_signature_line_length.

Added in version 7.1.

.. js:method:: name(signature)

This directive is an alias for js:function, however it describes a function that is implemented as a method on a class object.

Added in version 1.6.

:single-line-parameter-list: (no value)

Ensures that the function's parameters will be emitted on a single logical line, overriding javascript_maximum_signature_line_length and maximum_signature_line_length.

Added in version 7.1.

.. js:class:: name

オブジェクトを作るコンストラクタの説明をします。基本的には関数と似ていますが、 class という文字が表示されます:

.. js:class:: MyAnimal(name[, age])

   :param string name: The name of the animal
   :param number age: an optional age for the animal

次のようにレンダリングされます:

class MyAnimal(name[, age])
引数:
  • name (string()) -- 動物の名前

  • age (number()) -- 動物の年齢。これはオプションです。

:single-line-parameter-list: (no value)

Ensures that the function's parameters will be emitted on a single logical line, overriding javascript_maximum_signature_line_length and maximum_signature_line_length.

Added in version 7.1.

.. js:data:: name

グローバル変数や定数の説明です。

.. js:attribute:: object.name

オブジェクト の持つ 属性名 を説明します。

このドメインでは、オブジェクトの説明を参照する、次のようなロールが提供されています:

:js:mod:
:js:func:
:js:meth:
:js:class:
:js:data:
:js:attr: