Parameters 如何使用JsDoc a";混合;类型?

Parameters 如何使用JsDoc a";混合;类型?,parameters,mixed,jsdoc,Parameters,Mixed,Jsdoc,简单的问题,我如何记录“混合类型”?我知道我可以列出所有可能的类型,比如{null | undefined | String | Number | Object},最后发现自己缺少了一个,并且使它变得过于复杂。我尝试使用Mixed关键字,但它会在许多IDE(如WebStorm)中弹出错误。我找到了这样做的方法: /** * @param {*} foo */ function bar(foo) {} 使用{} 例如: 一个名为“myObj”的对象,其属性为“a”(a数字)、“b”(a 字符

简单的问题,我如何记录“混合类型”?我知道我可以列出所有可能的类型,比如
{null | undefined | String | Number | Object}
,最后发现自己缺少了一个,并且使它变得过于复杂。我尝试使用Mixed关键字,但它会在许多IDE(如WebStorm)中弹出错误。

我找到了这样做的方法:

/**
 * @param {*} foo
 */
function bar(foo) {}

使用{}

例如:

一个名为“myObj”的对象,其属性为“a”(a数字)、“b”(a 字符串)和“c”(任何类型)

{{a: number, b: string, c}} myObj
// or:
{Object} myObj
{number} myObj.a
{string} myObj.b
{} myObj.c

在JSDoc中,可以用不同的方式描述值。例如,使用以下标记
@type
@param
@return
。 可以使用“?”指定可选值。这里有一个例子

    /**
     * Returns string or null
     *
     * @param {?string} nullableStringArgument
     *
     * @return {?string}
     */
    function returnNullableString (nullableStringArgument = null) {
        /** @type {?string} */
        const nullableString = [null, 'string'][Math.floor(Math.random() * 2)];

        return nullableString;
    }

你在哪里找到的?我的搜索结果只能验证这是否适用于。这是“官方”JSDoc语法吗?@RobinvanBaalen看看几乎最后一个类型:@yckart,就像我之前说的;!=。我在JSDoc 3问题跟踪器中创建了一个问题跟踪器。现在在JSDoc文档中: