in

¿Cómo obtengo la fecha actual en JavaScript?

apple touch icon@2

ÚLTIMA EDICIÓN: 23/8/19
los fecha-fns la biblioteca funciona de manera muy similar a moment.js pero tiene una huella mucho más pequeña. Le permite elegir qué funciones desea incluir en su proyecto para que no tenga que compilar toda la biblioteca para formatear la fecha de hoy. Si una biblioteca mínima de terceros no es una opción para su proyecto, apoyo la solución aceptada por Samuel Meddows desde arriba.

Preservando la historia a continuación porque ayudó a algunas personas. Pero, para que conste, es bastante peligroso y puede romperse sin previo aviso, al igual que la mayoría de las soluciones en esta publicación.

EDITAR 7/02/2017
Una solución JS de una línea:

tl; dr

var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];

edge, ff latest y chrome return todaysDate = "2/7/2017"
«funciona» * en IE10 +

Explicación

Descubrí que IE10 e IE Edge hacen las cosas de manera un poco diferente … imagínate. con new Date(Date.now()).toLocaleString() como entrada,

IE10 devuelve:

"Tuesday, February 07, 2017 2:58:25 PM"

Podría escribir una gran función larga y FTFY. Pero realmente deberías usar moment.js por estas cosas. Mi guión simplemente limpia esto y te da la expandido notación estadounidense tradicional: > todaysDate = "March 06, 2017"

IE EDGE devuelve:

"‎2‎/‎7‎/‎2017‎ ‎2‎:‎59‎:‎27‎ ‎PM"

Por supuesto que no podría ser tan fácil. La cadena de fecha de Edge tiene caracteres «•» invisibles entre cada uno visible. Por lo tanto, ahora no solo verificaremos si el primer carácter es un número, sino los primeros 3 caracteres, ya que resulta que cualquier carácter en todo el rango de fechas eventualmente será un punto o una barra diagonal en algún momento. Entonces, para mantener las cosas simples, solo .rodaja() los primeros tres caracteres (un pequeño búfer contra futuras travesuras) y luego verifique los números. Probablemente debería tenerse en cuenta que estos puntos invisibles podrían potencialmente persistir en su código. Quizás me interesaría en eso si tiene planes más grandes que simplemente imprimir esta cadena en su vista.

∴ one-liner actualizado:

var todaysDate = new Date(Date.now()).toLocaleString().slice(0,3).match(/[0-9]/i) ? new Date(Date.now()).toLocaleString().split(' ')[0].split(',')[0] : new Date(Date.now()).toLocaleString().split(' ')[1] + " " + new Date(Date.now()).toLocaleString().split(' ')[2] + " " + new Date(Date.now()).toLocaleString().split(' ')[3];

Eso apesta leer. Qué tal si:

var dateString = new Date(Date.now()).toLocaleString();
var todaysDate = dateString.slice(0,3).match(/[0-9]/i) ? dateString.split(' ')[0].split(',')[0] : dateString.split(' ')[1] + " " + dateString.split(' ')[2] + " " + dateString.split(' ')[3];

RESPUESTA ORIGINAL

Tengo una sola línea para ti:

new Date(Date.now()).toLocaleString().split(', ')[0];

y [1] le dará la hora del día.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Script por lotes: comandos

gfg 200x200 min

Leer archivo JSON usando Python