Mi cadena de fecha y hora tiene el siguiente formato:
var sdt = '2022-05-19T13:00:00';Quiero extraer la fecha y la hora por separado y debajo está mi código:
((sdt.getMonth() > 8) ? (sdt.getMonth() + 1) : ('0' + (sdt.getMonth() + 1))) + '/' + ((sdt.getDate() > 9) ? sdt.getDate() : ('0' + sdt.getDate())) + '/' + sdt.getFullYear() + ' ' + (sdt.getHours()) + ':' + (sdt.getMinutes()) + ':00'Del código anterior, la fecha se extrae correctamente pero no la hora. alguna ayuda pls?
Puede usar el objeto Date y usar el método Date#toLocaleDateString & Date#toLocaleTimeString para obtener su hora y fecha
¡O incluso Date#toLocaleString para obtener ambos al mismo tiempo!
const sdt = '2022-05-19T13:00:00'; const date = new Date(sdt) console.log(date.toLocaleString()) console.log(date.toLocaleDateString()) console.log(date.toLocaleTimeString())Tenga en cuenta que puede especificar la ubicación para obtener la fecha de un país actual
date.toLocaleString('en-GB')usa el constructor Date() :
const sdtString = '2022-05-19T13:00:00'; // https://en.wikipedia.org/wiki/ISO_8601 const sdt = new Date(sdtString); // Date Object {}luego para obtener la respectiva fecha / hora de uso:
Además, vale la pena recordar que getMonth() proporciona el índice del mes (basado en cero), no el número.
Siempre uso un moment.js cuando trato con la fecha y la hora. Simplemente pase la cadena de fecha y hora y especifique el formato de la salida que desea.
import moment from 'moment' var sdt = '2022-05-19T13:00:00'; let time = moment(sdt).format("HH:mm:ss") let date = moment(sdt).format("DD/MM/YYYY") console.log(time) //01:00:00 console.log(date) //19/05/2022https://momentjs.com/ consulte esta página para conocer más formatos