类型注释 https://jsdoc.app/
/**
* @param {number} a param1
* @param {number} b param2
* @returns {number}
* */
function fn(a, b) {
return a + b
}
let a = fn()
常见的类型注释
@type变量类型@param(或@params或@argument) 参数类型returns(或returns) 返回值类型typedef相当于ts中的type Status = "open" | "close"@callback回调函数 https://jsdoc.app/tags-callback.html@template@class(@constructor)@this函数内部this指向@extends(@arguments)enum
/**@typedef {'open'|'close'} Status */
/**@type {Status} */
const a = 'close'
在webpack中使用
/** @type {import('webpack').Configuration} */
module.exports = {
...
}