Hola otra vez:
Una posibilidad es la que planteas, y la otra es redefinir la función para que recoja los parámetros de otra manera (como se hace en las precargas... por ejemplo...
function miFunction() {
datos = miFunction.arguments;
alert(datos.length);
// luego recoger los datos por el índice ... datos[0]... datos[datos.length - 1]
}
Saludos