繁体   English   中英

WebStorm中适当的JSDoc注释用于具有可变数量参数的函数?

[英]Proper JSDoc annotations in WebStorm for functions with variable number of arguments?

我已经阅读了这个问题的一堆答案,并且我自己尝试了一些不同的变体,但到目前为止,我还没有找到满足WebStorm的任何东西。 有问题的代码看起来像这样:

var slice = Array.prototype.slice;

/**
 * @param {function} func The original function.
 * @param {...*} args Bound argument values.
 * @returns {function} The partially applied function
 */
function partial(func /* args */) {
    var args = slice.call(arguments, 1);
    return function() {
        return func.apply(this, args.concat(slice.call(arguments)));
    };
}

上面的代码触发一条警告,说“JSDoc中描述的参数args没有出现在函数签名中”。 在WebStorm内部,它们有一些类似注释的JS文件,以支持Function.prototype.call之类的自动完成,但这些文件仅用作库。 因此,他们可以在他们的签名中包含任何内容,因此他们只是在最后添加一个额外的参数(在这种情况下将是“args”)。 但是在常规代码中,这不是一个真正的选择。

是否有任何形式的WebStorm实际上接受这种语法没有抱怨,或者这只是一个错误/缺失的功能?

如果我从Michael Bollin的书中正确地记得,你仍然需要在函数签名中添加第二个参数,即使你将通过JavaScript的特殊数组类似的参数对象(可用于每个函数)访问额外的参数,而不是你指定的那个在签名中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM