2011-02-10 15 views
11

Estoy usando IE9 beta con el código de prueba a continuación y encuentro un error 80020102 cuando vbscript intenta anexar a la matriz. Si ejecuto esto en modo peculiar parece que funciona.IE9 Error 80020102, usando vbscript palabra clave Preserve con doctype strict

Sin saber si esto es un problema de MS o algo impropio que estoy haciendo, lo he enviado al depósito de errores IE9s. ¿Alguien tiene una sugerencia sobre un trabajo alternativo?

Publicaba el html completo, pero siempre se ve mal en la vista previa.

-- 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])); 
    } 

} 
+0

Lea en http://stackoverflow.com/editing-help los problemas de formato. –

+0

¿Por qué mezclas el código JS y VBScript? Mantener el código JS es en mi humilde opinión mejor. En JS, puede llamar al método Array.push (val) en lugar de a esta fea función VBScript appendArray (arr, val). – CedX

+1

no hay error en IE8 en modo estricto así que de hecho un asunto IE9 estoy de acuerdo con Cédric, ambos idiomas tienen sus méritos pero en matrices Javascript seguramente es mejor – peter

Respuesta

0

Aquí está el código limpiado desde VBScript:

function test() { 
    var contextKeysArray = [], jscontextKeysArray = []; 
    for (var x = 0; x < 10; x++) { 
     jscontextKeysArray[x] = x; 
    } 

    for (var i = 0; i < jscontextKeysArray.length; i++) { 
     contextKeysArray.push(jscontextKeysArray[i]); 
    } 
} 
1

sólo tratar de añadir esta línea en la parte superior de la página si el uso de la página html.

<! DOCTYPE html > 
+0

Un poco tarde para la fiesta con esta respuesta - la pregunta es sobre IE9 beta , que es algún tiempo en el pasado. A partir de la pregunta, también parece estar al tanto del modo peculiar y cómo activarlo o no. – Spudley