@use JSDoc

語法

使用 JSDoc 標籤字典(預設啟用)

@interface [<name>]

使用 Closure Compiler 標籤字典

@interface

概觀

@interface 標籤標記符號為介面,其他符號可以實作。例如,您的程式碼可能會定義一個父類別,其方法和屬性為 stub。您可以將 @interface 標籤新增至父類別,以指出子類別必須實作父類別的方法和屬性。

@interface 標籤新增至介面的頂層符號(例如,建構函式)。您不需要將 @interface 標籤新增至介面的每個成員(例如,介面的實例方法)。

如果您正在使用 JSDoc 標籤字典(預設啟用),您也可以使用虛擬註解定義介面,而不是為介面撰寫程式碼。請參閱「定義介面的虛擬註解」以取得範例。

範例

在以下範例中,Color 函式表示其他類別可以實作的介面

使用 @interface 標籤
/**
 * Interface for classes that represent a color.
 *
 * @interface
 */
function Color() {}

/**
 * Get the color as an array of red, green, and blue values, represented as
 * decimal numbers between 0 and 1.
 *
 * @returns {Array&lt;number>} An array containing the red, green, and blue values,
 * in that order.
 */
Color.prototype.rgb = function() {
    throw new Error('not implemented');
};

以下範例使用虛擬註解,而不是程式碼,來定義 Color 介面

定義介面的虛擬註解
/**
 * Interface for classes that represent a color.
 *
 * @interface Color
 */

/**
 * Get the color as an array of red, green, and blue values, represented as
 * decimal numbers between 0 and 1.
 *
 * @function
 * @name Color#rgb
 * @returns {Array&lt;number>} An array containing the red, green, and blue values,
 * in that order.
 */