我正在使用VSCode并在其中创建了2个文件index.html和app.js我创建了这个函数
function hello(){
console.log("hello");
}
hello();
当我将鼠标悬停在hello函数上时,文本会出现在悬停状态,function():void 那么IDE如何确定什么是函数的返回类型虽然它的js文件不是ts文件仍然显示返回和数据类型,这是怎么发生的,这是什么导致它
答案 0 :(得分:1)
好吧,我假设Visual Studio背后的团队对你编写的javascript代码做了一些分析。对于您的方法,很容易看出返回类型应该是无效的。也许它可以做更复杂的分析,你可以通过返回一个返回整数(静态)甚至是一个对象的方法来找到。这是他们在Visual Studio中称为IntelliSense的一部分。
即使使用javascript而不是typescript进行编程,您仍然可以确定变量的类型。打字稿明确提到这一点,例如:let name : String = "JD";
。但即使在简单的Javascript中,您也在处理类型,即使您没有明确提及它们。例如,您可以使用以下代码对此进行测试。
var name = "JD";
console.log(typeof name); // logs "string"
我认为解释IntelliSense如何做到这一点将超出这个答案的范围,我担心我也无法给出足够的答案。虽然stackoverflow上有一些帖子旨在回答这个问题,或者似乎无论如何都要链接到更多资源。