javascript - parse - jquery: ¿Cómo obtener hh: mm: ss del objeto date?
jquery date now format yyyy mm dd (4)
Esta pregunta ya tiene una respuesta aquí:
- javascript fecha para encadenar 6 respuestas
¿Cómo puedo obtener este hh: mm: ss del objeto date?
var d = new Date(); // for now
datetext = d.getHours()+":"+d.getMinutes()+":"+d.getSeconds();
Tengo este resultado a veces,
12:10:1
cual debería ser
12:10:01
Supongo que esto también pasa a la hora y al minuto.
Así que estoy después de esto
01:01:01
No este 1: 1: 1
Le sugiero que revise alguna biblioteca de fecha / hora. Moment.js es un buen ejemplo.
Usted podría hacer simplemente como a continuación
var d = new Date();
var formatteddatestr = moment(d).format(''hh:mm:ss a'');
Aquí hay un ejemplo de violín.
Puede utilizar este fragmento de código. También lo jsfiddle
a jsfiddle
y agregué comentarios de tipo más seguro, así que asegúrate de revisar el violín.
Si está usando jQuery, llámelo dentro de su función de listo. De lo contrario, podría usar JavaScript simple para actualizar el valor de su campo.
$(document).ready(function(){
var d = new Date();
var formatted_time = time_format(d);
$(''#yourTimeField'').text(formatted_time);
});
Agregue estos dos métodos a su script (también puede pegarlo en un solo archivo, como en el fragmento de código jsfiddle ):
function time_format(d) {
hours = format_two_digits(d.getHours());
minutes = format_two_digits(d.getMinutes());
seconds = format_two_digits(d.getSeconds());
return hours + ":" + minutes + ":" + seconds;
}
function format_two_digits(n) {
return n < 10 ? ''0'' + n : n;
}
Eso es :) Espero que ayude :)
También puedes intentar usar Moment.js . Una biblioteca de fechas javascript para analizar, validar, manipular y formatear fechas.
Solución - (tl; versión dr)
datetext = d.toTimeString().split('' '')[0]
Explicación:
toTimeString
devuelve el tiempo completo. Lo dividimos por espacio para obtener solo el componente de tiempo, luego tomamos el primer valor que es de uso. :)
Flujo completo:
d = new Date();
// d is "Sun Oct 13 2013 20:32:01 GMT+0530 (India Standard Time)"
datetext = d.toTimeString();
// datestring is "20:32:01 GMT+0530 (India Standard Time)"
// Split with '' '' and we get: ["20:32:01", "GMT+0530", "(India", "Standard", "Time)"]
// Take the first value from array :)
datetext = datetext.split('' '')[0];
Nota: Esto no requiere que incluya archivos o bibliotecas externas, por lo que el tiempo requerido para la ejecución sería más rápido.