Javascript 如何使用jsdoc来记录这一点?
我想知道如何使用Javascript 如何使用jsdoc来记录这一点?,javascript,documentation,jsdoc,Javascript,Documentation,Jsdoc,我想知道如何使用jsdoc记录这种类型的类: var MyObject = (function(){ var that = {}; function privateFunction(){}; that.publicFunction = function(){}; that.publicField = "foo"; return that; })(); 有许多名为JSDoc的东西,但是使用与一起工作的注释,您可以使用@constructor将MyClass标记为构
jsdoc
记录这种类型的类:
var MyObject = (function(){
var that = {};
function privateFunction(){};
that.publicFunction = function(){};
that.publicField = "foo";
return that;
})();
有许多名为JSDoc的东西,但是使用与一起工作的注释,您可以使用
@constructor
将MyClass
标记为构造函数
/** @constructor */
var MyClass = ...;
然后您可以明确指出,的
属于标称类型MyClass
,尽管该标称类型显然不适用于的实例
/** @type MyClass */
var that = /** @type {MyClass} */ {};
第一个@type
建立声明的类型,第二个是值的类型断言/转换
通过这些方法,您可以使用此注释
/** @this MyClass */
that.publicFunction = function () { ... };
什么是
that.publicFunction(){}代码>?也许在括号前需要一个=函数
。为什么一个带有publicFunction
属性和publicField
属性的对象被视为类?也许结尾不应该有一个{}
?@Mike感谢您注意到public函数
stuff@Mike实际上,MyClassMyClass
更像是一个单例对象。不打算将其与'new'关键字一起用于创建实例+1这很有用。我用了非常糟糕的术语MyClass
不会成为类(不会与new
关键字一起使用),我已将其更改为MyObject
是否有方法将构造函数置于命名空间下?我尝试过使用memberof,但似乎没有任何改变。@porlune,my.namespace.MyClass=function…
。