@use JSDoc

語法

@namespace [[{<type>}] <SomeName>]

概述

@namespace 標籤表示一個物件為其成員建立一個命名空間。您也可以撰寫定義程式碼所使用的命名空間的虛擬 JSDoc 註解。

如果命名空間是由物件文字以外的符號定義的,您可以將類型表達式與 @namespace 標籤一起包含。如果 @namespace 標籤包含類型,它也必須包含名稱。

您可能需要記錄名稱包含特殊字元(例如「#」或「!」)的命名空間。在這些情況下,當您記錄或連結到命名空間時,您必須在包含特殊字元的命名空間部分加上引號。有關詳細資訊,請參閱以下範例。

範例

使用 @namespace 標籤與物件
/**
 * My namespace.
 * @namespace
 */
var MyNamespace = {
    /** documented as MyNamespace.foo */
    foo: function() {},
    /** documented as MyNamespace.bar */
    bar: 1
};
使用 @namespace 標籤進行虛擬註解
/**
 * A namespace.
 * @namespace MyNamespace
 */

/**
 * A function in MyNamespace (MyNamespace.myFunction).
 * @function myFunction
 * @memberof MyNamespace
 */

如果 @namespace 包含名稱具有特殊字元的符號,您必須使用雙引號將符號的名稱括起來。如果符號的名稱已包含一個或多個雙引號,請使用反斜線 (\) 來跳脫雙引號。

使用 @namespace 標籤與不尋常的成員名稱
/** @namespace window */

/**
 * Shorthand for the alert function.
 * Refer to it as {@link window."!"} (note the double quotes).
 */
window["!"] = function(msg) { alert(msg); };