Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么VSCode';函数参数的s类型检查忽略类型对象?_Javascript_Typescript_Visual Studio Code_Jsdoc - Fatal编程技术网

Javascript 为什么VSCode';函数参数的s类型检查忽略类型对象?

Javascript 为什么VSCode';函数参数的s类型检查忽略类型对象?,javascript,typescript,visual-studio-code,jsdoc,Javascript,Typescript,Visual Studio Code,Jsdoc,我使用VSCode作为编辑器,启用了its,并添加了函数应该采用的定义类型的参数(请参见下面的代码)。当此函数被传递给对象以外的参数时,VSCode的类型检查功能如何报告?如果我在block标记中将类型设置为object,然后在传递数字值的同时调用该函数,那么VSCode中没有标记冲突(请参见屏幕截图)。为什么--这不应该被标记为类型冲突吗 指示“参数类型可以是内置JavaScript类型,如字符串或对象。” 如果我将输入参数定义为string类型而不是object,然后在传递number类型的

我使用VSCode作为编辑器,启用了its,并添加了函数应该采用的定义类型的参数(请参见下面的代码)。当此函数被传递给对象以外的参数时,VSCode的类型检查功能如何报告?如果我在block标记中将类型设置为
object
,然后在传递数字值的同时调用该函数,那么VSCode中没有标记冲突(请参见屏幕截图)。为什么--这不应该被标记为类型冲突吗

指示“参数类型可以是内置JavaScript类型,如字符串或对象。”

如果我将输入参数定义为
string
类型而不是
object
,然后在传递
number
类型的参数时调用该函数,则会像预期的那样标记一个违规()

谢谢


My Function+JSDoc块标记

/**
 * Test description
 *
 * @param {string} myVar - Description of myVar.

 */
const myFunc = myVar => {
  return myVar
}

您的示例可以在TypeScript中使用。确保您的
tsconfig.json
具有
“allowJs:true”
@xAlien95 OK感谢您确认TS游乐场中的功能。我可以尝试编辑我的tsconfig.json。但我该如何编辑该文件/该文件位于何处?需要明确的是,我的项目本身没有tsconfig.json文件,也没有显式安装TypeScript。在本例中发生的类型检查是由VSCode完成的类型检查,VSCode本身使用自己的捆绑版本的TypeScript。也许你告诉我的意思是这可能是VSCode问题,而不是TS问题。