Javascript WebStorm能否将参数的子属性解析为函数

Javascript WebStorm能否将参数的子属性解析为函数,javascript,node.js,webstorm,Javascript,Node.js,Webstorm,假设我有一个函数: var test = function(var1, var2) { if(var1.ATTRIBUTE1) // do something else if(var2.CHILD) // do something } 这里ATTRIBUTE1和CHILD通常被标记为未解析变量,并发出警告 有什么方法可以向WebStorm提供关于这些事情的信息以消除警告吗?您可以在注释中告诉WebStorm形状 /** * @param va

假设我有一个函数:

var test = function(var1, var2) 
{
    if(var1.ATTRIBUTE1)
        // do something
    else if(var2.CHILD)
        // do something
}
这里ATTRIBUTE1和CHILD通常被标记为未解析变量,并发出警告


有什么方法可以向WebStorm提供关于这些事情的信息以消除警告吗?

您可以在注释中告诉WebStorm形状

/**
 * @param var1.ATTRIBUTE1
 * @param var2.CHILD
*/
const test = (var1, var2) => {
  if (var1.ATTRIBUTE1) {
  } else if (var2.CHILD) {
  }
}

您可以在

下找到更多信息。您可以使用JSDoc注释进行此操作

使用: 简化形式: 还有一点:
/**
 * @param {Object} var1
 * @param {boolean} var1.ATTRIBUTE1
 * @param {Object} var2
 * @param {boolean} var2.CHILD
 */
const test = (var1, var2) => {
    if (var1.ATTRIBUTE1) {
    } else if (var2.CHILD) {
    }
}
/**
 * @param var1.ATTRIBUTE1
 * @param var2.CHILD
 */
const test = (var1, var2) => {
  if (var1.ATTRIBUTE1) {
  } else if (var2.CHILD) {
  }
}
/**
 * @param {{ATTRIBUTE1:boolean}} var1
 * @param {{CHILD:boolean}} var2
 */
const test = (var1, var2) => {
    if (var1.ATTRIBUTE1) {
    } else if (var2.CHILD) {
    }
}