@private,@ public,@ class和@param在JS中是什么意思

时间:2018-02-13 04:30:21

标签: javascript

欢迎任何可以提供帮助的人

请参阅以下代码。我只是想了解@private,@ public,@ class和@param在JavaScript中的含义。他们是用JavaScript做任何事情,或者只是作为告诉程序员他们是什么的指示?

/**
 * Event functions references.
 * @private
 */
e = {
    _onDragStart: null,
    _onDragMove: null,
    _onDragEnd: null,
    _transitionEnd: null,
    _resizer: null,
    _responsiveCall: null,
    _goToLoop: null,
    _checkVisibile: null
};

/**
 * Creates a carousel.
 * @class The Owl Carousel.
 * @public
 * @param {HTMLElement|jQuery} element - The element to create the carousel for.
 * @param {Object} [options] - The options
 */
function Owl(element, options) {

    /**
     * Current settings for the carousel.
     * @public
     */
    this.settings = null;

2 个答案:

答案 0 :(得分:11)

这些在Javascript中称为“标记”。它们用于文档。您正确地猜测它们可以帮助程序员更好地理解代码。让我们从上面的示例中一个接一个地进行。

The @private tag marks a symbol as private, or not meant for general use.

因此,变量e应该是私有的,不应访问 在当前课程之外。

The @class tag marks a function as being a constructor, meant to be called with the new keyword to return an instance.

所以在这里它说函数Owl是一个构造函数,应该 被调用时用新的关键字调用。

The @public opposed to @private suggests that the function is publicly available to be accessed outside the current context.

因此,可以在当前类之外调用owl函数。

The @param describe the parameters of the function. There are three parts of it. First is within {}. It suggests the type of the param. Second is name of the param. Third is after they hyphen(-) sign. It describes the parameter.

因此,这里有两个参数。首先是HTMLElement或jQuery 类型,具有描述的命名元素:创建元素的元素 轮播。其次是对象类型的命名选项,并带有描述 :选项。

希望这会有所帮助。您可以在“阻止标签”下阅读有关标签here的更多信息。

答案 1 :(得分:1)

那些在评论中,JS解释器甚至不会阅读它们。它们是开发人员的注释,可能由自动文档工具或IDE用于语法帮助。