JSDoc 快速上手
作者:Midqiu
來(lái)源:SegmentFault 思否社區(qū)
JSDoc 是在JS代碼的注釋里,以特定的格式標(biāo)記變量的類型,函數(shù)的參數(shù)、返回值等,這樣做可以避免調(diào)用函數(shù)的時(shí)候傳錯(cuò)或少傳參數(shù),提高代碼的健壯性,減少bug;再加上編輯器的支持,可以極大的提高編碼的效率。
比如說(shuō)下面的這個(gè)例子,

因?yàn)槲覀儤?biāo)記了pd的類型,當(dāng)調(diào)用pd這個(gè)變量的時(shí)候,編輯器可以非常方便的提示這個(gè)對(duì)象上有什么方法。
我們翻看JSDoc的官方文檔發(fā)現(xiàn)羅列了一大堆的功能,但其實(shí)常用的功能也就幾個(gè),只需要花幾分鐘掌握一下下面的幾個(gè)使用方法,就可以大幅度提高寫代碼的編輯體驗(yàn)。
JSDoc語(yǔ)法上要求以/**開(kāi)頭,*/的注釋。
聲明函數(shù)的參數(shù)的類型
@param {參數(shù)的類型} 參數(shù)的名 注釋

/**然后按回車,編輯器會(huì)自動(dòng)替我們補(bǔ)充好相關(guān)的變量名等信息,我們只需要填上參數(shù)的類型就可以了。

類型除了圖上所示的string之外,還有boolean、 undefined、 null 類型;還有復(fù)雜類型,{key1:string,key2?:number} ;還可以相互組合比如 string|number 等typescript里面可以用type定義的。聲明函數(shù)的返回值的類型
@returns來(lái)指定函數(shù)的參數(shù)類型和返回值類型@returns {string}
/**
*
* @param {string} id 注釋注釋注釋
* @param {string} name 注釋注釋注釋
* @returns {string}
*/
function getName(id, name) {
//name.
}

聲明變量的類型
/**@type {string} */
var aaa=global.aaa

定義一個(gè)類型
類型,供其他地方使用。@typedef {類型} 類型名
/**@typedef {{name:string,age:number}} User *//**
* @typedef {Object} User
* @property {string} name
* @property{number} age
*/


定義一個(gè)函數(shù)類型的復(fù)雜類型:
/**@typedef {(a:string,b:string)=>void} FN */
/**@typedef {Function} FN
* @argument {string} a
* @argument {string} b
*/

評(píng)論
圖片
表情
