我有一个构造函数:
/**
* Language class.
* @param {string|String} abbreviation
* @param {string|String} name
* @param {number|Number} id
* @throws {ReferenceError}
* @constructor
*/
function Language(abbreviation, name, id) {
//Parameters validation
{
if (abbreviation === null) {
throw new ReferenceError();
}
if (TypeValidator.IsString(abbreviation)) {
throw new TypeError();
}
}
}
我想使用Object.defineProperties():
向Language类原型添加属性Object.defineProperties(
Language.prototype,
{
'ABBREVIATION': {
configurable: false,
writable : false,
enumerable : false,
get: function () {
return get.call(_abbreviation, this);
}
},
}
);
如何使用jsDoc new getter作为Language.prototype的一部分进行记录,以及如何描述getter(我是否必须使用@function ...)?