Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/01/2014, 20:06
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Sumar tiempo a una Date

Para añadir días, meses o años a una fecha dada, suelo hacerlo de esta forma: Convierto la fecha actual y la cantidad de tiempo a añadir en segundos, los sumo y obtengo la nueva fecha, por ejemplo:

Código Javascript:
Ver original
  1. (function(){
  2.     var fecha = new Date(),
  3.         dia = fecha.getDate(),
  4.         mes = fecha.getMonth() + 1,
  5.         anio = fecha.getFullYear(),
  6.         tiempo = prompt("Ingrese la cantidad de días a añadir"),
  7.         addTime = tiempo * 86400; //Tiempo en segundos
  8.  
  9.     fecha.setSeconds(addTime); //Añado el tiempo
  10.  
  11.     document.body.innerHTML = "Fecha actual: " + dia + "/" + mes + "/" + anio + "<br />";
  12.     document.body.innerHTML += "Tiempo añadido: " + tiempo + " días<br />";
  13.     document.body.innerHTML += "Fecha final: " + fecha.getDate() + "/" + (fecha.getMonth() + 1) + "/" + fecha.getFullYear();
  14. })();

Creo un objeto Date y de él, tomo la fecha, mes y año, que será la fecha actual ya que no le he dado parámetros al objeto. Luego, le pido al usuario que ingrese la cantidad de días a añadir a la fecha actual, transformo dicha cantidad a segundos, multiplicándola por la cantidad de segundos que hay en un día, con el método setSeconds, adiciono los segundos de los días que quiero añadir a la fecha actual. Finalmente, imprimo los datos. Podrás notar que a los meses les sumo 1, esto es porque el objeto los toma desde 0 hasta 11, como en los arrays.

El resultado se ve así, ingresando 8 días:
Código HTML:
Ver original
  1. Fecha actual: 27/1/2014
  2. Tiempo añadido: 8 días
  3. Fecha final: 4/2/2014

Esto te puede dar una idea de cómo puedes elaborar lo que quieres, ya que la clave está en sumar el tiempo en segundos a la fecha, saludos.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand