2011-02-05 61 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