局部变量的正确JSDoc语法是什么?

时间:2016-08-01 21:57:15

标签: javascript jsdoc jsdoc3

对于像这样的功能......

function example() {
  var X = 100;

  ...

  var Y = 'abc';

  ...

  return Z;
}

我需要解释一些局部变量的用途。添加这样的描述......

function example() {
  /**
   * @description - Need to explain the purpose of X here.
   */
  var X = 100;

  ...

  /**
   * @description - Need to explain the purpose of Y here.
   */
  var Y = 'abc';

  ...

  return Z;
}

......似乎没有被JS Doc v3.4.0接听。

正确的语法是什么?

P.S。我的一些用例需要多行注释。

5 个答案:

答案 0 :(得分:16)

我通常会在项目中使用类似下面的代码。

function example() {
  /**
   * Need to explain the purpose of X here.
   * @type {number}
   */
  var X = 100;

  ...

  /**
   * Need to explain the purpose of Y here.
   * @type {string}
   */
  var Y = 'abc';

  ...

  return Z;
}

答案 1 :(得分:8)

一个班轮:

  /** @type {string} */
  var Y = 'abc';

答案 2 :(得分:4)

JS Docs似乎忽略了" block" (例如,课程,职能等)。我试过......

@description
@inner
@instance
@member
@memberof
@name
@summary

......和其他人。我无法让他们中的任何一个生成文档。在整个JS Doc示例中,他们使用普通的JS注释来处理这类事情。

我的结论是 没有正式的JS Doc语法。

答案 3 :(得分:3)

最适合我的东西:

/**
  * @name AssetAutoGenerationOption
  * @type {"all" | "master" | "off"}
  */
export type AssetAutoGenerationOption = "all" | "master" | "off";

答案 4 :(得分:0)

您可能会使用:

/**
 * @function
 * @property {number} x - Need to explain the purpose of X here.
 * @property {number} y - Need to explain the purpose of Y here.
 * @returns {number} - Describe return value here (assumed number type for this example)
 */
function example() {
  var x
  var y = 'abc';
  return z;
}