Estoy bastante seguro de que esto es simple, pero estoy tratando de imprimir la hora actual en formato de 12 horas sin incluir el cero inicial en la cadena de tiempo. Así por ejemplo.
09:30 AM debe imprimirse como 9:30 AM.
El código actual que tengo hasta ahora (que imprime la versión con el cero inicial) es este:
var d = new Date(); var timeString = d.toLocaleTimeString([], {hour: '2-digit', minute:'2-digit'});¿Cómo puedo cambiar el código anterior para eliminar los ceros iniciales cuando aparecen?
Su código está especificando:
hour: '2-digit'Solo deshazte de eso y todo está bien. :-)
Para la configuración regional de EE. UU., esto es lo que obtengo:
const d = new Date(); console.log( d.toLocaleTimeString() // 8:40:28 PM );Consulte también: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString#using_options
Use el formato numeric para la hora en lugar de 2-digit
var timeString = d.toLocaleTimeString([], {hour: 'numeric', minute:'2-digit'}); const d = new Date(); d.setHours(9, 30); console.log(d.toLocaleTimeString([], {hour: '2-digit', minute:'2-digit'})); console.log(d.toLocaleTimeString([], {hour: 'numeric', minute:'2-digit'}));