Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在JSDoc中描述解构对象参数_Javascript_Ecmascript 6_Jsdoc - Fatal编程技术网

Javascript 如何在JSDoc中描述解构对象参数

Javascript 如何在JSDoc中描述解构对象参数,javascript,ecmascript-6,jsdoc,Javascript,Ecmascript 6,Jsdoc,如果我有一个JavaScript函数,将对象作为参数,我可以用JSDoc描述对象的预期属性,如下所示: /** * @param bar * @param bar.baz {number} * @param bar.qux {number} */ function foo(bar) { return bar.baz + bar.qux; } 如果我使用ECMAScript 6解构来定义函数,而不给真正的参数对象命名,那么如何描述这些属性 const foo = ({ baz,

如果我有一个JavaScript函数,将对象作为参数,我可以用JSDoc描述对象的预期属性,如下所示:

/**
 * @param bar
 * @param bar.baz {number}
 * @param bar.qux {number}
 */
function foo(bar) {
    return bar.baz + bar.qux;
}
如果我使用ECMAScript 6解构来定义函数,而不给真正的参数对象命名,那么如何描述这些属性

const foo = ({ baz, qux }) => baz + qux;

事实证明,JSDoc确实支持通过创建占位符名称进行破坏。它缺乏官方文件


我也有同样的问题。现在我正在使用Visual Code Studi,它的插件做了类似的事情(这对我来说很合适):


这在VSCode 1.23.1中对我不起作用。这是VSCode的限制吗?请注意,此功能的官方JSDoc文档现在已发布。是关于此功能在VSCode中不起作用的特定问题。我们仍然没有一个好的解决方案answer@Maxwells.c被接受的答案有什么问题?没关系。这是一个很好的解决方案,很有效。我只是想找一个不那么冗长的。例如,JSDoc接受这个
@param{Object}{bar,qux}
。如果能用一个gux来描述,这样代码就少了,那就太好了。
/**
 * @param {Object} param - this is object param
 * @param {number} param.baz - this is property param
 * @param {number} param.qux - this is property param
 */
const foo = ({ baz, qux }) => baz + qux;
/**
 * @param  {} {a
 * @param  {} b
 * @param  {} c}
 * @param  {} {d}
 */
const aaa = ({a,b,c},{d}) => {

}