[英]How to document a dictionary in JSDoc?
有下一個例子:
var CONF = {
locale: {
"en": {
name: "English",
lang: "en-US"
},
"es": {
name: "Spanish",
lang: "es-ES"
}
}
};
並且知道locale屬性包含的是來自數據庫的字典對象,如何使用JSDoc記錄其內部屬性?
目前我正在考慮為我的語言環境對象設置typedef
類型,那么我是否可以將locale
屬性設置為我定義的類型的數組? 這是正確的方法嗎?
根據JSDoc 3文檔 :
數組和對象(類型應用程序和記錄類型)
具有字符串鍵和數字值的對象:
{Object.<string, number>}
所以它會是:
/** @type {{locales: Object.<string, {name: string, lang: string}>}} */
var CONF = {
locales: {
en: {
name: "English",
lang: "en-US"
},
es: {
name: "Spanish",
lang: "es-ES"
}
}
};
清潔,使用@typedef
/**
* @typedef {{name: string, lang: string}} locale
*/
/**
* @type {{locales: Object.<string, locale>}}
*/
var CONF = {
locales: {
en: {
name: "English",
lang: "en-US"
},
es: {
name: "Spanish",
lang: "es-ES"
}
}
};
據我所知:
使用@typedef
和@property
定義自定義類型在JSDoc“正確”的方式。 但是編寫和閱讀丑陋是很麻煩的(文檔中的主要罪惡)。
記錄類型更整潔(注意雙{{
s):
/** {{
name:string,
lang:string
}} */
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.