No estoy tan seguro de cuál es la forma correcta de insertar la fecha en la base de datos, pero estoy usando new Date() .
Entonces obtengo un formato de fecha como este cuando consulto desde la base de datos:
2021-09-24T12:38:54.656ZAhora me di cuenta de que el formato de fecha no es tan fácil de usar. Así que estoy tratando de convertirlo, si es posible, en un formato legible estándar como este:
Sept 25 2015, 8:00 PM
Intenté usar toLocaleString() para mi fecha extraída de la base de datos, pero probablemente no funcionará si obtuve la fecha correctamente extraída de la base de datos, ¿ya es una cadena?
¿Hay alguna solución para esto para que no tenga que cambiar la forma en que ingreso la fecha en mi base de datos?
const date = moment("2021-09-24T12:38:54.656Z").format('MMM D YYYY, h:mm a') console.log(date) <script src="https://momentjs.com/downloads/moment.min.js"></script>usar momentjs
Puede encontrar el método de formato y aplicarlo como desee
Creo que es mejor almacenar en DB como valor UTC 00 y lo está haciendo ahora mismo.
Cuando lo recupere, obtendrá un valor de cadena similar a 2021-09-24T12:38:54.656Z . En la interfaz de usuario, puede convertirlo fácilmente en una variable de fecha en JS usando,
const dateVar = new Date("2021-09-24T12:38:54.656Z"); console.log(dateVar.toLocaleString()); Si desea más formato de fecha que no sean las soluciones integradas como toLocaleString , puede usar bibliotecas de fecha como moment.js
Debería crear un objeto Fecha a partir de la cadena de marca de tiempo como esta.
let date = new Date('2021-09-24T12:38:54.656Z');Luego puede usar toLocaleString, toLocaleDateString, toDateString o toString como mejor le parezca.