<script language="JavaScript">
// Date(año, mes, dia) - Los meses van del 0 al 11 en JavaScript
fecha1 = new Date(2004, 0, 2);
fecha2 = new Date(2004, 0, 4);
// Se obtienen los milisegundos transcurridos entre el 1 de enero de 1970
// y la fecha en concreto
miliseg1 = fecha1.getTime();
miliseg2 = fecha2.getTime();
// Calculamos la fecha intermedia, primero restando la diferencia y dividiendo
// entre 2, y sumando el resultado a la fecha inicial
diferencia = (miliseg2 - miliseg1) / 2;
milisegpromedio = miliseg1 + diferencia;
// Convertimos la fecha en milisegundos a un formato de fecha más comprensible
fechapromedio = new Date(milisegpromedio);
alert(fechapromedio.getDate()+"/"+(fechapromedio.getMonth()+1)+"/"+fechapromedio.getFullYear());
</script>