我正在尝试记录这样的枚举:
/**
* Enum for the different types of tokens
* @memberof Ecre
* @enum {number}
* @readonly
*/
Ecre.TokenTypes = Object.freeze({
/**
* A string token
*/
"string": 1,
"comment": 2,
"number": 3,
"boolean": 4,
"identifier": 5
});
Run Code Online (Sandbox Code Playgroud)
但这并不像例外一样工作:string被记录为全局。
如何才能以正确的方式记录这些值?
我正在使用 JSDoc 3.3.0-alpha9(2014 年 6 月 28 日星期六 15:26:03 GMT)
小智 5
这是一个很老的问题,但答案仍然可能有帮助。由于Object.freeze会冻结对象,因此您可以在定义 enum 后调用它。
/**
* Enum for the different types of tokens
* @memberof Ecre
* @enum {number}
* @readonly
*/
Ecre.TokenTypes = {
"string": 1,
"comment": 2,
"number": 3,
"boolean": 4,
"identifier": 5
};
Object.freeze(Ecre.TokenTypes);
Run Code Online (Sandbox Code Playgroud)