Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.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
如何在VisualStudio.NET2008中保留JavaScript全局变量的intellisense_Javascript_Asp.net_Visual Studio_Intellisense - Fatal编程技术网

如何在VisualStudio.NET2008中保留JavaScript全局变量的intellisense

如何在VisualStudio.NET2008中保留JavaScript全局变量的intellisense,javascript,asp.net,visual-studio,intellisense,Javascript,Asp.net,Visual Studio,Intellisense,我有一个JavaScript包装器,我在主体加载时初始化它并将其设置为一个全局变量。刚创建完对象,我就有了完整的intellisense,但是当稍后从另一个函数引用它时,intellisense就丢失了。我认为这是因为动态键入: var myWrapper; function onload() { myWrapper = new Wrapper(args); myWrapper. //Intellisense here. } function whatever() {

我有一个JavaScript包装器,我在主体加载时初始化它并将其设置为一个全局变量。刚创建完对象,我就有了完整的intellisense,但是当稍后从另一个函数引用它时,intellisense就丢失了。我认为这是因为动态键入:

var myWrapper;

function onload() {
    myWrapper = new Wrapper(args);
    myWrapper. //Intellisense here.
}

function whatever() {
    myWrapper. //Intellisense lost.
}
我通过在代码之前假装再次创建对象,然后删除该行来解决此问题:

function whatever() {
    myWrapper = new Wrapper(); //Pretend to create object again.
    myWrapper. //Intellisense returns!
}

VisualStudio2010中的推断是否得到了改进,或者是否有任何方法可以告诉JavaScript我当前正在处理的对象的类型?

除非您知道它是什么类型(通过使用
new
关键字,很难猜出它是什么

例如,考虑下面的

var myArray;
myArray. //intellisense has no idea this is meant to be an array

var myArray = new Array();
myArray. //intellisense knows it is a array (.pop, .push, .join etc)
所以,是的,也许允许你的对象被设置(没有像你那样的args)并把它放在顶部

var myWrapper = new Wrapper();

// now whenever myWrapper is used, intellisense
// should appear (provided it knows what Wrapper is