IE9错误80020102,使用带有doctype strict的vbscript Preserve关键字

Chr*_*ris 11 javascript arrays vbscript internet-explorer-9

我正在使用IE9 beta和下面的测试代码,当vbscript尝试附加到数组时遇到80020102错误.如果我在怪癖模式下运行它似乎工作.

不知道这是一个MS问题还是我正在做的不正确的事情,我已经将它提交给IE9s的bug库.有没有人对解决方案有什么建议?

我发布了完整的HTML,但它在预览中总是看起来格格不入.

-- VBscript part ---    
Function getBlankArray() 
   getBlankArray = Array() 
End Function

Function appendArray(arr, val) 
   redim preserve arr(ubound(arr) + 1) 
   arr(ubound(arr)) = val 
   appendArray = arr 
End Function

-- javascript part --- 
function test()
{
    var contextKeysArray = getBlankArray();
        var jscontextKeysArray = new Array();
    for(var x=0; x < 10; x++)
    {

        jscontextKeysArray[x] = x;

    }

    for(i = 0; i < jscontextKeysArray.length; i++)
    {
            contextKeysArray = (appendArray(contextKeysArray, jscontextKeysArray[i]));
    }

}
Run Code Online (Sandbox Code Playgroud)

Sco*_*tux 0

您尝试过使用兼容模式吗?

<meta http-equiv="X-UA-Compatible" content="IE=8; IE=7; IE=5" >
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/cc288325%28v=vs.85%29.aspx

我也同意这样的评论:如果您可以摆脱 vbscript 并使用纯 javascript 解决方案,您的情况会更好。