【问题标题】:What is the purpose of text preceded with @ in comments [duplicate]评论中@前面的文本的目的是什么[重复]
【发布时间】:2019-10-16 04:09:51
【问题描述】:

我见过其中包含 @some text 的 cmets。这是 express.js 中的一个示例:

/**
 * Create an express application.
 *
 * @return {Function}
 * @api public
 */ 

这些@comments 也由 Visual Studio Code 以不同的颜色编码。

@ 在 cmets 之前的目的是什么?

【问题讨论】:

    标签: javascript node.js


    【解决方案1】:

    这些是JSDoc cmets。它们有助于解释函数的作用、它采用的参数和类型以及在 IDE 中悬停或使用函数时输出的内容。

    例如,在 VSCode 中,这段代码: 将产生这个工具提示:

    【讨论】:

      【解决方案2】:

      它被称为JSDoc,它是一个自动生成的文档(以 cmets 的形式),可以在您的 JavaScript 文件中使用。

      它与许多 IDE(集成开发接口)交互,例如 VSCode,它对于显示类型注释也很有用。这是一个类型注释的函数:

      /**
       * Represents a person
       * @constructor
       * @param {string} name - The name of the person
       * @param {number} age - The age of the person
       */
      function Person(name, age) {
          this.name = name;
          this.age = age;
      }
      

      如您所见,JSDoc 文档位于它所描述的函数之上,并且它知道:

      • 函数代表一个人
      • 函数是构造函数(@constructor)
      • 该函数接受string类型的参数(@param),名为name,代表人名
      • 该函数采用number 类型的参数(@param),名为age,代表人的年龄

      从这个意义上说,它有点像 TypeScript - 它使用类型注释(除了因为它们只是 cmets,它不像 TypeScript 编译器那样强制执行)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-04
        • 1970-01-01
        • 2012-03-30
        • 1970-01-01
        • 2017-09-27
        • 1970-01-01
        • 2011-11-18
        • 2020-01-25
        相关资源
        最近更新 更多