Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/02/2011, 17:36
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Restar Fechas con formato literal en los meses

buenas...

nota sobre Date.parse:
buenas...

Cita:
Iniciado por zerokilled Ver Mensaje
en javascript tienes la funcion Date.parse, el problema es que el formato que utiliza el string para convertirlo a un timestamp no es esta estandarizado, de modo que es dependiende de la implementacion de javascript. por ejemplo, ese mismo string en chrome me funciona bien con la funcion Date.parse, pero puede ser que otro navegador no acepte ese formato. sin embargo, en firefox ese formato no funciona. en lugar de guiones debes usar espacios.
aunque util, en mi opinion es mejor utilizar una funcion propia para analizar la fecha y obtener el timestamp. simplemente para evitar la incompatibilidad de los formatos entres los navegadores. punto y aparte... analizando el codigo lo veo demasiado redundante. facilmente puedes usar el constructor Date dividiendo la cadena en un array y al invocar Date utiliza el array en el orden apropiado. si el mes esta escrito por su nombre, podrias usar un objeto donde la propiedad sea el nombre del mes y el valor su correspondiente numero.
Código:
// notese que comienza por 0 ;
monthsName = {"Jan":0, "Feb":1, ..., "Nov":10, "Dec":11};

// asumiento que el formato es "Feb 28, 2011" ;
var array_date = string_date.split(/[\x20,]+/);
new Date(array_date[2], monthsName[array_date[0]], array_date[1]);
se puede hacer mas elaborado, pero es una idea para que tengas por donde partir.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.