2011-02-05 58 views
30

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

回答

47

我发现这样做的方式:

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

你从哪里找到的?我的搜索结果只能验证这将适用于[Closure编译器](https://developers.google.com/closure/compiler/docs/js-for-compiler#types)。它是'官方'的JSDoc语法吗? – 2013-01-29 15:55:44

1

使用{}

有来自http://usejsdoc.org/tags-type.html一个例子:

称为 'MyObj中' 具有属性“的对象a'(一个数字),'b'(一个 字符串)和'c'(任何类型)

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