yyyy now new from fecha javascript iso isodate

now - convertir la fecha de iso a milisegundos en javascript



new date javascript format dd mm yyyy (6)

¿Puedo convertir la fecha de iso a milisegundos? Por ejemplo, quiero convertir este iso

2012-02-10T13:19:11+0000

a milisegundos.

Porque quiero comparar la fecha actual de la fecha creada. Y la fecha de creación es una fecha iso.


Algún código para manipular Fecha y hora:

1 - Ahora fecha basada en milisegundos :

var now = +new Date()

2- Convertir milisegundos hasta la fecha :

var dateFormat = new Date(''put your milliseconds time here'')

3- convertir milisegundos al formato ISO :

var isoFormat = new Date(''date in milliseconds'').toJSON()


Otra opción a partir de 2017 es usar Date.parse() . La documentation de MDN señala, sin embargo, que no es confiable antes de ES5.

var date = new Date(); // today''s date and time in ISO format var myDate = Date.parse(date);

Ver el fiddle para más detalles.


Otra solución podría ser usar el analizador de objetos Number de esta manera:

let result = Number(new Date("2012-02-10T13:19:11+0000")); let resultWithGetTime = (new Date("2012-02-10T13:19:11+0000")).getTime(); console.log(result); console.log(resultWithGetTime);

Esto se convierte a milisegundos al igual que getTime() en el objeto Date


Otra solución posible es comparar la fecha actual con January 1, 1970 , puede obtener January 1, 1970 por una new Date(0) ;

var date = new Date(); var myDate= date - new Date(0);


Prueba esto

var date = new Date("11/21/1987 16:00:00"); // some mock date var milliseconds = date.getTime(); // This will return you the number of milliseconds // elapsed from January 1, 1970 // if your date is less than that date, the value will be negative

EDITAR

Usted ha proporcionado una fecha ISO. También es aceptado por el constructor del objeto Date

var myDate = new Date("2012-02-10T13:19:11+0000"); var result = myDate.getTime();

Editar

Lo mejor que he encontrado es deshacerme de la compensación manualmente.

var myDate = new Date("2012-02-10T13:19:11+0000"); var offset = myDate.getTimezoneOffset() * 60 * 1000; var withOffset = myDate.getTime(); var withoutOffset = withOffset - offset; alert(withOffset); alert(withoutOffset);

Parece que funciona. En cuanto a los problemas para convertir la cadena ISO en el objeto Date , puede consultar los enlaces provistos.

EDITAR

Se corrigió el error con la conversión incorrecta a milisegundos según el comentario de Prasad19sara.


Una abreviatura de las soluciones anteriores es

var myDate = +new Date("2012-02-10T13:19:11+0000");

Hace una conversión de tipo sobre la marcha y emite directamente la fecha en formato de milisegundos.

Otra forma también es usar el método de análisis de fecha utilitario que solo genera el tiempo de EPOCH en milisegundos.

var myDate = Date.parse("2012-02-10T13:19:11+0000");