Javascript 关于用jsDoc记录嵌套数组和对象数据的问题
如何使用jsdoc格式化嵌套数组和对象 这是我最好的猜测:Javascript 关于用jsDoc记录嵌套数组和对象数据的问题,javascript,jsdoc,Javascript,Jsdoc,如何使用jsdoc格式化嵌套数组和对象 这是我最好的猜测: an_obj = { username1 : [ { param1 : "value 1-1-1", param2 : "value 1-1-2", optional_nested : "1-1--2" }, { para
an_obj = {
username1 : [
{
param1 : "value 1-1-1",
param2 : "value 1-1-2",
optional_nested : "1-1--2"
},
{
param1 : "value 1-2-1",
param2 : "value 1-2-2"
},
],
username2 : [
{
param1 : "value 2-1-1",
param2 : "value 2-1-2"
},
{
param1 : "value 2-2-1",
param2 : "value 2-2-2",
optional_nested : "2-2--2"
}
]
}
}
/**
* A function description.
* @param {Object} obj
* @param {Object} obj.username This is not the object name, but a name type.
* @param {Array} obj.username.array Desc... using [] would conflict with optional params.
* However this could be confused with an object called array.
* @param {String} obj.username.array.param1 Desc... This is the object name rather than a type.
* @param {String} obj.username.array.param2 Desc...
* @param {String} obj.username.array.[optional_param] Desc...
*/
var myFunc = function(obj){
//...
};
myFunc(an_obj);
我如何指示一个对象被一种字符串索引
如何定义嵌套数组
也不确定在可选参数中的方括号放在哪里。我建议签出。我可能会这样写:
//{Object{username:<Array<Object{param1:String, param2:String,[optional_nest]:string}>>}}
/{Object{username:}
您可以尝试这样做:(如此处所述)
这应该声明obj.username.array
为字符串数组。
您使用的是jsdoc还是jsdoc3?我目前使用的是jsdoc toolkit v3。我不知道如何处理像这样的事情{id:'moo',items:[{url:'…',description:'moo2'},…]}这没有帮助,这个例子是记录匿名对象的数组,而不是真实对象的数组。link死了,上面的例子用jsdoc 3.3抛出了“无效类型表达式”
/**
* @param {String[]} obj.username.array
*/