buenas...
tienes un error, especificamente cuando intentas crear la estructura.
Código:
var i=0, datos = {};
function organizador(variable1, variable2, variable3){
datos[i][0] = variable1;
...
i++;
}
en lenguaje humano, lo marcado en negrita dice
asignar variable1 al indice 0 de la propiedad i en el objeto datos. o sea,
i equivale a cero, pero
datos es un objeto. con la sintaxis
datos[i], significa que estas accesando a la propiedad
0 del objeto
datos. hasta ahí no hay problema. el problema surge luego cuando intentas accesar un indice que no existe. en ese instante,
datos[i] es
undefined, pero luego lo consideras como un posible array
[0]. de hecho, lo que realmente sucede es que estas tratando de asignar una propiedad a
undefined. por tanto, se genera error y no puede continuar. antes de asignar la variable debes declarar qué es
datos[i], o más claramente, debes asignarle un array vacio.
datos[i] = [].