¿Cómo obtengo la fecha actual en JavaScript?

¿Cómo obtengo la fecha actual en JavaScript?

preguntado Oct 07 '09, 08:10

var currentTime = new Date(); -

Consulte las documentación para el objeto Date. Tiene ejemplos. -

esto te ayudaría tizag.com/javascriptT/javascriptdate.php -

new Date() devuelve la corriente hora, no el actual datos. La distinción es importante si está tratando de compararla con otra fecha que no tiene un componente de tiempo (es decir, a la medianoche). -

use momentJs, esta lib es oro para los desarrolladores. -

30 Respuestas

Utiliza new Date() para generar un nuevo Date objeto que contiene la fecha y hora actuales.

var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();

today = mm + '/' + dd + '/' + yyyy;
document.write(today);

Esto le dará la fecha de hoy en el formato de mm / dd / aaaa.

Simplemente cambia today = mm +'/'+ dd +'/'+ yyyy; al formato que desee.

respondido 14 mar '19, 22:03

gracias por el código .. pero lo que todavía no lo entiendo, es la línea if (dd <10) {dd = '0' + dd} ... why <10? por lo que entiendo del código es que si el carácter del día es menor que 2, simplemente agregue un 0 antes del día ... pero ¿por qué 10? - estoy dentro

@imin: porque menos de 2 caracteres significa 1 carácter ... y todo menos de 10 (1 a 9) es 1 carácter, así que tendremos 01, 02, ..., 09 - zfm

@MounaCheikhna - ¿Cómo podríamos estar en el año 999? - nnnnnn

Cambie el mes y la fecha si no se encuentra en América del Norte. - Marcos Micallef

El nuevo Date.prototype.toLocaleDateString() El método es una solución más flexible. Es parte de JavaScript desde ECMAScript 5.1 y es compatible con navegadores de siempre. MDN: toLocaleDateString() - Adam Brown

var utc = new Date().toJSON().slice(0,10).replace(/-/g,'/');
document.write(utc);

Use el replace opción si vas a reutilizar el utc variable, como new Date(utc), ya que Firefox y Safari no reconocen una fecha con guiones.

Respondido el 27 de diciembre de 16 a las 18:12

No lo creo :) ¡Parece bastante sencillo! - varun natraaj

toJSON () devuelve como utc datetime - andy n

Devuelve una fecha y hora JSON. toUTCString() devuelve como utc datetime. - varun natraaj

No considera TimezoneOffset. En el momento de la prueba, estaba buscando "ahora" y obtuve "ayer". stackoverflow.com/questions/13646446/… - mickmackusa

Perfecto. Esta es la forma más limpia de hacer esto que veo aquí. Funciona bien en MomentJS para "Hoy, no ahora" moment( new Date().toJSON().slice(0, 10) ) - Kyle Hotchkiss

Lo más corto posible.

Para obtener un formato como "2018-08-03":

let today = new Date().toISOString().slice(0, 10)

console.log(today)

Para obtener un formato como "8/3/2018":

let today = new Date().toLocaleDateString()

console.log(today)

Además, puedes pasar local como argumento, por ejemplo toLocaleDateString("sr"), etc.

Respondido 05 ago 18, 22:08

Esto todavía falla debido al cambio de zona horaria. - Ltarky

¿Por qué esta no es la respuesta aceptada, la más simple y utiliza funciones integradas? vida ordinaria

Tu segunda respuesta es la mejor. - GC_

¡ACTUALIZADO!, Desplazarse hacia abajo

Si quieres algo sencillo y bonito para el usuario final ... Also, fixed a small suffix issue in the first version below. Now properly returns suffix.

var objToday = new Date(),
	weekday = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'),
	dayOfWeek = weekday[objToday.getDay()],
	domEnder = function() { var a = objToday; if (/1/.test(parseInt((a + "").charAt(0)))) return "th"; a = parseInt((a + "").charAt(1)); return 1 == a ? "st" : 2 == a ? "nd" : 3 == a ? "rd" : "th" }(),
	dayOfMonth = today + ( objToday.getDate() < 10) ? '0' + objToday.getDate() + domEnder : objToday.getDate() + domEnder,
	months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'),
	curMonth = months[objToday.getMonth()],
	curYear = objToday.getFullYear(),
	curHour = objToday.getHours() > 12 ? objToday.getHours() - 12 : (objToday.getHours() < 10 ? "0" + objToday.getHours() : objToday.getHours()),
	curMinute = objToday.getMinutes() < 10 ? "0" + objToday.getMinutes() : objToday.getMinutes(),
	curSeconds = objToday.getSeconds() < 10 ? "0" + objToday.getSeconds() : objToday.getSeconds(),
	curMeridiem = objToday.getHours() > 12 ? "PM" : "AM";
var today = curHour + ":" + curMinute + "." + curSeconds + curMeridiem + " " + dayOfWeek + " " + dayOfMonth + " of " + curMonth + ", " + curYear;

document.getElementsByTagName('h1')[0].textContent = today;
<h1></h1>

ACTUALIZACIÓN DE UBBER Después de mucha procrastinación, finalmente he GitHubbed y actualicé esto con la solución final que he estado usando para mí. ¡Incluso ha tenido algunas ediciones de última hora para hacerlo más dulce! Si estas buscando a los viejos jsFiddle, por favor vea esto.

Esta actualización viene en 2 sabores, todavía relativamente pequeños, aunque no tan pequeños como mi respuesta original anterior. Si quieres algo extremadamente pequeño, ve con eso.
También tenga en cuenta: esto es aún menos hinchado que moment.js. Si bien moment.js es agradable, en mi opinión, tiene demasiados métodos seculares, que requieren un momento de aprendizaje como si fuera un idioma. El mío aquí usa el mismo formato común que PHP: fecha.

Enlaces rápidos

Sabor 1 new Date().format(String) Mi favorito personal. Conozco el tabú pero funciona muy bien en el objeto de fecha. Solo tenga en cuenta cualquier otra modificación que pueda tener para el objeto de fecha.

//  use as simple as
new Date().format('m-d-Y h:i:s');   //  07-06-2016 06:38:34

Sabor 2 dateFormat(Date, String) Método todo en uno más tradicional. Tiene toda la capacidad del anterior, pero se llama a través del método con Date param.

//  use as simple as
dateFormat(new Date(), 'm-d-Y h:i:s');  //  07-06-2016 06:38:34

Sabor BONUS (requiere jQuery) $.date(Date, String) Esto contiene mucho más que un simple format opción. Extiende el objeto Date base e incluye métodos como addDays. Para obtener más información, consulte el ir.

En este mod, los caracteres de formato están inspirados en PHP: fecha. Para obtener una lista completa, consulte mi README

Este mod también tiene una lista mucho más larga de formatos prefabricados. Para usar un formato prefabricado, simplemente ingrese su nombre de clave. dateFormat(new Date(), 'pretty-a');

  • 'compuesto'
    • 'commonLogFormat' == 'd / M / Y: G: i: s'
    • 'exif' == 'Y: m: d G: i: s'
    • 'isoYearWeek' == 'Y \\ WW'
    • 'isoYearWeek2' == 'Y - \\ WW'
    • 'isoYearWeekDay' == 'Y \\ WWj'
    • 'isoYearWeekDay2' == 'Y - \\ WW-j'
    • 'mySQL' == 'Ymd h: i: s'
    • 'postgreSQL' == 'Yz'
    • 'postgreSQL2' == 'Yz'
    • 'jabón' == 'Ymd \\ TH: i: su'
    • 'jabón2' == 'Ymd \\ TH: i: s.uP'
    • 'unixTimestamp' == '@U'
    • 'xmlrpc' == 'Ymd \\ TG: i: s'
    • 'xmlrpcCompact' == 'Ymd \\ tGis'
    • 'wddx' == 'Ynj \\ TG: i: s'
  • 'constantes'
    • 'AMERICAN' == 'F j Y'
    • 'AMERICANSHORT' == 'm / d / Y'
    • 'AMERICANSHORTWTIME' == 'm / d / Y h: i: sA'
    • 'ATOM' == 'Ymd \\ TH: i: sP'
    • 'COOKIE' == 'l dMY H: i: s T'
    • 'EUROPEO' == 'j FY'
    • 'EUROPEANSHORT' == 'dmY'
    • 'EUROPEANSHORTWTIME' == 'dmY H: i: s'
    • 'ISO8601' == 'Ymd \\ TH: i: sO'
    • 'LEGAL' == 'j FY'
    • 'RFC822' == 'D d M y H: i: s O'
    • 'RFC850' == 'l dMy H: i: s T'
    • 'RFC1036' == 'D d M y H: i: s O'
    • 'RFC1123' == 'D d MYH: i: s O'
    • 'RFC2822' == 'D d MYH: i: s O'
    • 'RFC3339' == 'Ymd \\ TH: i: sP'
    • 'RSS' == 'D d MYH: i: s O'
    • 'W3C' == 'Ymd \\ TH: i: sP'
  • 'bonita'
    • 'bonita-a' == 'g: i.sA l jS \\ o \\ f FY'
    • 'bonita-b' == 'g: iA l jS \\ o \\ f FY'
    • 'bonita-c' == 'n / d / Y g: iA'
    • 'pretty-d' == 'n / d / Y'
    • 'bonita-e' == 'F jS - g: ia'
    • 'pretty-f' == 'g: iA'

Como puede notar, puede usar double \ escapar de un personaje.


Respondido 18 Jul 19, 08:07

@KamranAhmed Casi 2 años y más de 40 votos después, diría que el esfuerzo valió la pena. Jajaja. Desde entonces, he expandido mucho esta clase personalmente, pero no la he subido porque pensaba que la mayoría de la gente usaría ese otro plugin js date que veo recomendado, pero supongo que debería hacerlo más "público" y agregarlo aquí. - SpYk3HH

moment.js es ahora lo que usaría en estos días: cristiano stewart

Arriba, hay un error tipográfico (que me tomó un tiempo detectar), usa una variable "hoy" en la línea: "dayOfMonth = today +" - user1435707

"today + (objToday.getDate () <10)? '0' + objToday.getDate () + domEnder: objToday.getDate () + domEnder" - JS es un lenguaje estúpido. - Alex s

Si solo desea una fecha sin información de hora, use:

var today = new Date();
    today.setHours(0, 0, 0, 0);

document.write(today);

Respondido 08 Jul 16, 16:07

Esta parece ser la única respuesta que realmente responde a la pregunta. Todos los demás responden sobre cómo formatear una fecha como cadena. - Inrego

Estoy de acuerdo. En realidad, quería escribir una respuesta similar a esta y luego apareció una pequeña ventana preguntándome si había leído todas las respuestas. Como solo he leído las respuestas principales, decidí verificar si hay respuestas correctas y esta fue la primera respuesta correcta. - Lajos Arpad

Esto establece las horas usando UTC, lo que podría no funcionar para todos los casos de uso. - McKay

Prueba esto:

var currentDate = new Date()
var day = currentDate.getDate()
var month = currentDate.getMonth() + 1
var year = currentDate.getFullYear()
document.write("<b>" + day + "/" + month + "/" + year + "</b>")

El resultado será como

15/2/2012

Respondido 10 Feb 16, 11:02

Si está buscando un control mucho más granular sobre los formatos de fecha, le recomiendo que consulte momentjs. Excelente biblioteca, y solo 5 KB. http://momentjs.com/

Respondido el 12 de diciembre de 12 a las 01:12

Admite la localización como un encanto. - risadinha

En estos días usamos date-fns: trata las fechas como inmutables (el momento muta las fechas), es más rápido y es modular (solo importa lo que necesitas). - caminante libre

Seis años después de publicar este momentjs ha ganado bastante peso. Es posible que desee comprobar github.com/iamkun/dayjs en cambio, me lo describieron como "momentjs en una dieta". Misma API simple. - benjamin.keen

Puedes usar moment.js: http://momentjs.com/

var m = moment().format("DD/MM/YYYY");

document.write(m);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script>

Respondido 08 Jul 16, 16:07

El momento es exagerado por solo obtener la fecha actual. - Dan Dascalescu

Or moment().format("L") respetar la configuración regional actual. - Dunc

@DanDascalescu En realidad, la especificación base de Javascript para DateTime es tan mala. - Todd

Si ya ha importado momentjs en su proyecto, esta es la respuesta más limpia y simple. - Adil H. Raza

var d = (new Date()).toString().split(' ').splice(1,3).join(' ');

document.write(d)

Para dividirlo en pasos:

  1. (new Date()).toString() da "Viernes 28 de junio de 2013 15:30:18 GMT-0700 (PDT)"

  2. (new Date()).toString().split(' ') divide la cadena anterior en cada espacio y devuelve una matriz de la siguiente manera: ["Vie", "Jun", "28", "2013", "15:31:14", "GMT-0700", "(PDT)" ]

  3. (new Date()).toString().split(' ').splice(1,3).join(' ') toma el segundo, tercer y cuarto valor de la matriz anterior, los une con espacios y devuelve una cadena "28 de junio de 2013"

Respondido 08 Jul 16, 16:07

Necesitaba un tiempo en 00:00:00 y no quería reconstruirlo manualmente; el paso 2 me lleva allí perfectamente. ¡Prestigio! - panhandel

Puede guardar algunos bytes haciendo esto: Date().split(' ').splice(1,3).join(' ') - Hyde

var date = new Date().toLocaleDateString("en-US");

Además, puedes llamar al método toLocaleDateString con dos parámetros:

var date = new Date().toLocaleDateString("en-US", {
    "year": "numeric",
    "month": "numeric"
});

Artículo sobre MSDN. Más sobre este método en DND.

Respondido el 22 de diciembre de 15 a las 17:12

Bien, funciona en Chrome. Desafortunadamente, no funciona en PhantomJS a partir del 22/4/2016 - Chris

solución fría. debe estar en la parte superior. new Date().toLocaleDateString("de-de") me hace el truco. - user3772108

Esto funciona siempre:

    var now = new Date();
    var day = ("0" + now.getDate()).slice(-2);
    var month = ("0" + (now.getMonth() + 1)).slice(-2);
    var today = now.getFullYear() + "-" + (month) + "-" + (day);
    
    console.log(today);

respondido 28 mar '19, 07:03

Versión más limpia y sencilla:

new Date().toLocaleString();

Resultado varía según el usuario local:

2/27/2017, 9:15:41 AM

Respondido 27 Feb 17, 07:02

Si está satisfecho con el formato AAAA-MM-DD, esto también funcionará.

new Date().toISOString().split('T')[0]

2018-03-10

respondido 10 mar '18, 14:03

Dado que la longitud siempre es fija, también podemos usar la subcadena. nueva Fecha (). toISOString (). subcadena (0, 10); También podría ser un poco más rápido. - Mika Karjunen

Puede usar el Fecha.js biblioteca que extensión objeto Date, por lo que puede tener el método .today ().

Respondido el 26 de junio de 12 a las 14:06

si está usando jquery ui con un selector de fecha, puede usar $ .datepicker.formatDate ('aa / mm / dd', new Date ()) - pedro munnings

Puede obtener la fecha actual para llamar al método estático ahora así:

var now = Date.now()

referencia:

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now

Respondido 11 Jul 15, 21:07

Esto era básicamente todo lo que necesitaba. var dtToday = new Date(date.now); - El autor

La respuesta de Varun no tiene en cuenta Zona horaria. Aquí hay una versión que lo hace:

var d = new Date()
new Date(d.getTime() - d.getTimezoneOffset() * 60000).toJSON().slice(0, 10) // 2015-08-11

La TimezoneOffset son minutos, mientras que el constructor Date tarda milisegundos, por lo que la multiplicación por 60000.

contestado el 23 de mayo de 17 a las 13:05

La respuesta más corta es: new Date().toJSON().slice(0,10)

Respondido el 01 de diciembre de 17 a las 21:12

Estaba buscando una función de semilla muy simple que cambie regularmente. Esta respuesta es un verdadero placer. - nirazul

new Date().toDateString();

Resultado:

"Mié, 03 de febrero de 2016"

Respondido 03 Feb 16, 12:02

As toISOString() solo devolverá la hora UTC actual, no la hora local. Tenemos que hacer una fecha usando la función '.toString ()' para obtener la fecha en yyyy-MM-dd formato como

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('T')[0]);

Para introducir la fecha y la hora yyyy-MM-ddTHH:mm:ss formato

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0]);

Para introducir la fecha y la hora yyyy-MM-dd HH:mm:ss formato

document.write(new Date(new Date().toString().split('GMT')[0]+' UTC').toISOString().split('.')[0].replace('T',' '));

contestado el 18 de mayo de 18 a las 08:05

new Date().toISOString().slice(0,10); 

también funcionaría

Respondido 01 Oct 15, 17:10

Si quieres un simple DD/MM/YYYY formato, acabo de encontrar esta solución simple, aunque no prefija los ceros faltantes.

var d = new Date();
document.write( [d.getDate(), d.getMonth()+1, d.getFullYear()].join('/') );

Respondido el 30 de junio de 15 a las 09:06

La mayoría de las otras respuestas proporcionan la fecha con la hora.
Si solo necesitas una cita.

new Date().toISOString().split("T")[0]

Salida

[ '2021-02-08', '06:07:44.629Z' ]

Si lo quieres en / uso de formato replace.

Si desea otros formatos, es mejor usar momentjs.

Respondido 08 Feb 21, 06:02

¡Gracias! Sabía que la fecha tenía que tener un método de cadena, no sé por qué todos están analizando días, meses y años y concatenando ... Incluso si quisieras guiones: Date (). ToISOString (). Split ('T') [ 0] .replaceAll ('/', '-') - Colector Joe

Sí, tal vez tenían algo más en mente. - Shubham Chadokar

ÚLTIMA EDICIÓN: 8/23/19 La fecha-fns la biblioteca funciona de manera muy similar a momento.js pero tiene una huella mucho más pequeña. Le permite elegir qué funciones desea incluir en su proyecto para no tener que compilar toda la biblioteca para formatear la fecha de hoy. Si una biblioteca de terceros mínima 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 2/7/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 momento.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 puede 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 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 gustaría profundizar 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.

Respondido 23 ago 19, 18:08

Puede usar este

<script>
function my_curr_date() {      
    var currentDate = new Date()
    var day = currentDate.getDate();
    var month = currentDate.getMonth() + 1;
    var year = currentDate.getFullYear();
    var my_date = month+"-"+day+"-"+year;
    document.getElementById("dateField").value=my_date;    
}
</script>

El HTML es

<body onload='return my_curr_date();'>
    <input type='text' name='dateField' id='dateField' value='' />
</body>

Respondido 19 Oct 14, 20:10

Una forma sencilla de lograrlo (considerando su zona horaria actual, aprovechando el formato ISO aaaa-mm-dd) es:

let d = new Date().toISOString().substring(0,19).replace("T"," ") // "2020-02-18 16:41:58"

Por lo general, este es un formato de fecha bastante compatible con todos los usos y puede convertirlo a un valor de fecha puro si es necesario:

Date.parse(d); // 1582044297000

Respondido 18 Feb 20, 16:02

Si está utilizando jQuery. Prueba este delineador:

$.datepicker.formatDate('dd/mm/yy', new Date());

Aquí está la convención para formatear la fecha

  • d - día del mes (sin cero a la izquierda)
  • dd - día del mes (dos dígitos)
  • o - día del año (sin ceros a la izquierda)
  • oo - día del año (tres dígitos)
  • D - nombre del día corto
  • DD - nombre del día largo
  • m - mes del año (sin cero a la izquierda)
  • mm - mes del año (dos dígitos)
  • M - nombre corto del mes
  • MM - nombre del mes largo
  • y - año (dos dígitos)
  • aa - año (cuatro dígitos)

Aquí está la referencia de jQuery selector de fechas

Respondido 01 Feb 17, 11:02

Esto es bueno para obtener la fecha formateada.

let date = new Date().toLocaleDateString("en", {year:"numeric", day:"2-digit", month:"2-digit"});
console.log(date);

Respondido 01 ago 19, 11:08

Trata

`${Date()}`.slice(4,15)

console.log( `${Date()}`.slice(4,15) )

Usamos aquí funcionalidades estándar de JS: literales de plantilla, Objeto de fecha que se lanza a la cuerda, y rebanada. Esta es probablemente la solución más corta que cumple con los requisitos de OP (sin tiempo, solo fecha)

contestado el 04 de mayo de 20 a las 15:05

La pregunta es para javascript. - Jaydeep Shil

@JaydeepShil: esta es una solución de JavaScript: si no cree, ejecute el fragmento anterior o cópielo y péguelo en la consola de Chrome. Kamil Kielczewski

¡¡Gran y concisa solución !! Gracias - zardilior

Si antes de la "fecha actual" estás pensando en "hoy", este truco puede funcionar para ti:

> new Date(3600000*Math.floor(Date.now()/3600000))
2020-05-07T07:00:00.000Z

De esta manera lo estás consiguiendo hoy Fecha instancia con tiempo 0:00:00.

El principio de funcionamiento es muy simple: tomamos la marca de tiempo actual y la dividimos por 1 día expresada en milisegundos. Obtendremos una fracción. Mediante el uso Piso.de.matemáticas, nos deshacemos de la fracción, por lo que obtenemos un número entero. Ahora, si lo multiplicamos por un día (nuevamente, en milisegundos), obtenemos una marca de tiempo con la hora exactamente al comienzo del día.

> now = Date.now()
1588837459929
> daysInMs = now/3600000
441343.73886916664
> justDays = Math.floor(daysInMs)
441343
> today = justDays*3600000
1588834800000
> new Date(today)
2020-05-07T07:00:00.000Z

Limpio y sencillo.

contestado el 07 de mayo de 20 a las 08:05

¿Dónde está la explicación de cómo funciona esta respuesta y por qué cree que es un buen consejo? - mickmackusa

No entiendo de dónde vino este repentino ataque. No veo que hayas hecho esa pregunta a otras respuestas. ¿Puedo saber por qué me han otorgado este premio? - marverix

No entiendo por qué siente que esto es un ataque. Sí, hice sonar el silbato en (varias) otras respuestas de solo código. Tiene la posibilidad de editar su publicación. Mejorelo con la intención de educar / empoderar a miles de futuros investigadores. - mickmackusa

Es difícil no tener la impresión de un ataque, después de una oración imperativa áspera y de alto sombrero. Con mucho gusto mejoraré mi respuesta, pero la próxima vez no asuma que tiene derecho a dar órdenes a la gente. Realmente aprecio su atención y su tiempo para hacer de Stackoverflow un lugar mejor, pero créame que nadie querrá cooperar con usted si trata a personas de alto nivel. Como la oración "¿Podría proporcionar una explicación de cómo funciona esta respuesta y por qué cree que es un buen consejo?" suena mucho mejor en mis ojos que "¿Dónde está ...". ¿Entiendes de lo que estoy hablando? - marverix

Podría responder lo mismo: ¿es esta tu forma de autoestima? :) Pero no voy a continuar esta conversación porque veo que no conduce a nada. - marverix

Usando JS integrado Date.prototype.toLocaleDateString() De los documentos de MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString

const options = { 
  month: '2-digit', 
  day: '2-digit',
  year: 'numeric', 
};

console.log(new Date().toLocaleDateString('en-US', options)); // mm/dd/yyyy

Respondido 16 Oct 20, 06:10

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.