title: what do @private, @public, @class and @param mean in JS
body: <p>Hello to whoever can help</p>
  
  <p>Please refer to the code below. I just want to understand what do @private, @public, @class, and @param mean in JavaScript. Do they do anything in JavaScript or they are just there as indications to tell programmer they are what they are?</p>
  
  <pre><code>/**
   * 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;
  </code></pre>