JavaScript 领域

版本 1.0 中新增。

JavaScript 领域(名称为 js)提供以下指令

.. js:module:: name

此指令设置后续对象声明的模块名称。模块名称用于全局模块索引和交叉引用。例如,此指令不会像 py:class 那样创建对象标题。

默认情况下,此指令将创建一个可链接的实体,并在全局模块索引中生成一个条目,除非指定了 no-index 选项。如果指定了此选项,则指令将仅更新当前模块名称。

版本 1.6 中新增。

版本 5.2 中更改: 模块指令支持主体内容。

.. js:function:: name(signature)

描述 JavaScript 函数或方法。如果要将参数描述为可选参数,请使用方括号,如 Python 签名中所述 记录

您可以使用字段提供有关参数及其预期类型、函数可能抛出的错误以及返回值的更多详细信息

.. 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)

确保函数的参数将在一条逻辑线上发出,覆盖 javascript_maximum_signature_line_lengthmaximum_signature_line_length

版本 7.1 中新增。

.. js:method:: name(signature)

此指令是 js:function 的别名,但它描述的是作为类对象上的方法实现的函数。

版本 1.6 中新增。

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

确保函数的参数将在一条逻辑线上发出,覆盖 javascript_maximum_signature_line_lengthmaximum_signature_line_length

版本 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)

确保函数的参数将在一条逻辑线上发出,覆盖 javascript_maximum_signature_line_lengthmaximum_signature_line_length

版本 7.1 中新增。

.. js:data:: name

描述全局变量或常量。

.. js:attribute:: object.name

描述object的属性name

这些角色用于引用所描述的对象

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