Visual Studio代码自动完成/IntelliSense不能正常工作于JavaScript


它不显示长度等数组的属性。

我不确定这是问题还是VScode的自动完成/智能感知的预期行为。

我需要安装任何扩展才能使其工作吗?

编辑:
arr之前添加varlet时,自动完成功能正常工作,但在函数内部无法工作。


解决方案

检查是否启用了生成扩展TypeScrip和JAVASCRIPT语言功能。

若要进行检查,请转到"扩展"并搜索@builtin TypeScript and JavaScript Language Features

该代码应该如下所示: [![vscode][1]][1]

编辑:

另外,请检查您是否选择了正确的语言?

  • ->;CTRL (or CMD) + P
  • ->;> Change Language Mode
  • ->;JavaScript

我注意到的另一件事是:变量前面没有varletconst,请参见stackoverflow.com/a/51962449/14401587

编辑2:

智能感知不知道函数的参数类型。但您可以在评论中使用@param注释:

/**
 * 
 * @param {Array} arr 
 */
function a(arr) {
    arr.
}

对于变量,您还可以使用@type:

/** @type {Array} */
let a;

相关文章