Javascript 我应该在JSDoc中使用与@param兼容的类吗?

Javascript 我应该在JSDoc中使用与@param兼容的类吗?,javascript,eslint,jsdoc,Javascript,Eslint,Jsdoc,My Python API返回一个JSON对象,例如: { 答:1,, b:嗨 } 我在客户机中也为其设置了一个类: 把某物归类{ 构造函数(){ 这个.a=null; 这个.b=null; } } 我接收一个对象并将其传递给函数而不进行修改。我应该像这样使用@param而不是简单的@param{*} /** *@param{Sth}Sth在这里合适吗? */ 功能f(某事物){ //做某事 } 通常,与外部/第三方资源的交互由。如果您在本地转换代码,即:获取并使用数据创建实例,那么您的解决

My Python API返回一个JSON对象,例如:

{
答:1,,
b:嗨
}
我在客户机中也为其设置了一个类:

把某物归类{ 构造函数(){ 这个.a=null; 这个.b=null; } } 我接收一个对象并将其传递给函数而不进行修改。我应该像这样使用
@param
而不是简单的
@param{*}

/**
*@param{Sth}Sth在这里合适吗?
*/
功能f(某事物){
//做某事
}

通常,与外部/第三方资源的交互由。如果您在本地转换代码,即:获取并使用数据创建实例,那么您的解决方案是正确的:类就足够了。但是,如果您正在获取数据并将其传递给构造函数,则可能需要在externs中定义一个类型


当开始使用externs时,我发现它非常有用。

是的,这是合适的。JSDocs将类视为一个类型。如果Sth类与函数在同一文件中不可用,您可能需要该文件中的JSDoc类型定义,例如使用
/**@typedef{import(“./path/to/your/class/file.js”).Sth}Sth*/

如果您可以避免
@param{*}
,您通常应该这样做,因为拥有更多的类型信息总是更好的