【发布时间】:2011-02-10 17:24:36
【问题描述】:
我正在使用 IE9 beta 和下面的测试代码,当 vbscript 尝试附加到数组时遇到 80020102 错误。如果我以怪癖模式运行它,它似乎可以工作。
不知道这是 MS 问题还是我做的不正确,我已将其提交给 IE9s 错误库。有人对解决方法有建议吗?
我会发布完整的 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]));
}
}
【问题讨论】:
-
阅读stackoverflow.com/editing-help 的格式问题。
-
你为什么要混合 JS 和 VBScript 代码???坚持 JS 代码是恕我直言更好。在 JS 中,你可以调用 Array.push(val) 方法来代替这个丑陋的 VBScript appendArray(arr, val) 函数。
-
在严格模式下 IE8 没有错误,所以我确实同意 Cédric 的 IE9 问题,两种语言都有其优点,但在数组中 Javascript 肯定更好
标签: javascript arrays vbscript internet-explorer-9