number now month from day javascript function date gettime

now - milliseconds to date javascript



¿Por qué javascript getTime() no es una función? (3)

Utilicé la siguiente función,

function datediff() { var dat1 = document.getElementById(''date1'').value; alert(dat1);//i get 2010-04-01 var dat2 = document.getElementById(''date2'').value; alert(dat2);// i get 2010-04-13 var oneDay = 24*60*60*1000; // hours*minutes*seconds*milliseconds var diffDays = Math.abs((dat1.getTime() - dat2.getTime())/(oneDay)); alert(diffDays); }

me sale el error dat1.getTime() no es una función ....


Esto se debe a que sus variables dat1 y dat2 son solo cadenas.

Debería analizarlos para obtener un objeto Date , para ese formato siempre uso la siguiente función:

// parse a date in yyyy-mm-dd format function parseDate(input) { var parts = input.match(/(/d+)/g); // new Date(year, month [, date [, hours[, minutes[, seconds[, ms]]]]]) return new Date(parts[0], parts[1]-1, parts[2]); // months are 0-based }

Utilizo esta función porque el Date.parse(string) (o la new Date(string) ) depende de la implementación , y el formato aaaa-MM-dd funcionará en el navegador moderno pero no en IE, por lo que prefiero hacerlo manualmente.


Para usar esta función / método, necesita una instancia de la clase Fecha .

Este método siempre se utiliza junto con un objeto Date .

Vea el código a continuación:

var d = new Date(); d.getTime();

Enlace: http://www.w3schools.com/jsref/jsref_getTime.asp


dat1 y dat2 son cadenas en JavaScript. No hay una función getTime en el prototipo String. Creo que quieres la función Date.parse (): http://www.w3schools.com/jsref/jsref_parse.asp

Lo usarías así:

var date = Date.parse(dat1);