@class (@constructor)【クラス (new 呼び出し関数)】
@classdesc【クラスの説明】
@augments (@extends)【継承】

@class【クラス (new 呼び出し関数)】
@constructor【クラス (new 呼び出し関数)】

メモ

構文

@class [クラス名] 
シノニム:@constructor
クラス名:クラスの別名 (省略:定義名)

@constructor 

/**
 * クラスAのコンストラクタの説明
 * @constructor
 * @classdesc クラスAの説明
 * @param {number} p1 パラメータ1
 * @param {number} p2 パラメータ2
 */
function ClassA(p1, p2) {
  // 処理
}

var classA1 = new ClassA(1, 2);
var classA2 = ClassA(1, 2);     // 警告:new なし 
/**
 * クラスXの説明
 */
class ClassX {
  /**
   * クラスXのコンストラクタの説明
   * @param {number} p1 パラメータ1
   * @param {number} p2 パラメータ2
   */
  constructor(p1, p2) {
    // 処理
  }
}

var classX1 = new ClassX(1, 2);
var classX2 = ClassX(1, 2);     // 警告:new なし 

@classdesc【クラスの説明】

メモ

構文

@classdesc クラスの説明

/**
 * クラスAのコンストラクタの説明
 * @constructor
 * @classdesc クラスAの説明
 * @param {number} p1 パラメータ1
 * @param {number} p2 パラメータ2
 */
function ClassA(p1, p2) {
  // 処理
}
/**
 * クラスXの説明
 */
class ClassX {
  /**
   * クラスXのコンストラクタの説明
   * @param {number} p1 パラメータ1
   * @param {number} p2 パラメータ2
   */
  constructor(p1, p2) {
    // 処理
  }
}

@augments【継承】
@extends【継承】

メモ

構文

@augments 継承元のクラス
シノニム:@extends

@extends {継承元のクラス} 

/**
 * クラスAのコンストラクタの説明
 * @constructor
 * @classdesc クラスAの説明
 * @param {number} p1 パラメータ1
 * @param {number} p2 パラメータ2
 */
function ClassA(p1, p2) {
  // 処理
}

/**
 * クラスBのコンストラクタの説明
 * @constructor
 * @extends {ClassA}
 * @classdesc クラスBの説明
 * @param {number} p1 パラメータ1
 * @param {number} p2 パラメータ2
 */
function ClassB(p1, p2) {
  // 処理
}
/**
 * クラスXの説明
 */
class ClassX {
 /**
   * クラスXのコンストラクタの説明
   * @param {number} p1 パラメータ1
   * @param {number} p2 パラメータ2
   */
  constructor(p1, p2) {
    // 処理
  }
}

/**
 * クラスYの説明
 * @extends ClassX
 */
class ClassY extends ClassX {
 /**
   * クラスYのコンストラクタの説明
   * @param {number} p1 パラメータ1
   * @param {number} p2 パラメータ2
   */
  constructor(p1, p2) {
    super(p1, p2);
    // 処理
  }
}