2009-12-19 25 views
7

Estoy buscando una forma de convertir un objeto Date de Javascript en una cadena. Estoy convirtiendo mi sitio de Ruby al lado del servidor de Javascript, y estoy buscando algo similar a strftime en Ruby, C y en muchos otros idiomas.Convierta una fecha en cadena en Javascript

Encontré un montón de scripts simples que hacen este tipo de conversión, pero prefiero no incluir una implementación personalizada si hay una forma estándar de hacerlo.

No estoy usando un marco de Javascript. Estoy usando Mozilla Rhino, pero preferiría evitar utilizar la biblioteca Java tanto como sea posible, para permitir el cambio de código fácilmente entre implementaciones.

Quiero ser capaz de especificar el formato de la cadena, ya que quiero incrustarlo en una oración. Deseo poder insertar arbitrarios on y at's, y tener el nombre completo del día, no solo su abreviatura. Entonces toString() no será suficiente.

+0

También hay bonita fecha (http://ejohn.org/blog/javascript-pretty-date/) – Mottie

Respuesta

2

MomentJS tiene un conjunto muy robusto de opciones de formato de tiempo, y también se ha actualizado recientemente.

+0

¡gran complemento! ¡¡¡muy recomendable!!! – Kuf

2

fechas tienen un toString incorporada:

alert(new Date().toString()) 

"Sab Dic 19 de 2009 08:23:33 GMT-0800 (hora estándar del Pacífico)"

1

Usted podría utilizar

new Date().toString() 

... para obtener un resultado localizado de la fecha.

+0

Debería haber agregado, que quiero poder especificar el formato de la cadena, ya que quiero incrustarlo en una oración. Deseo poder insertar arbitrarios on y at's, y tener el nombre completo del día, no solo su abreviatura. – wvdschel

+0

¿Por qué tanta gente vota esto? No hay nada flexible sobre esto. Dijo que necesita algo ** análogo **. –

+0

No, era parte de su pregunta original –

9

Existe una biblioteca gratuita (y sorprendente) para Javascript llamada Datejs que le ofrece todo tipo de capacidades de formateo y análisis (consulte la documentación FormatSpecifiers).

+2

Aunque prefiero no usar una biblioteca externa, esto es exactamente lo que necesito. Sin embargo, es triste que lo etiqueten como alfa y no lo actualicen durante más de 2 años. – wvdschel

+2

Te escucho, pero solo puedes descargar la última y utilizar el código como referencia para construir el tuyo. También tienen pruebas (http://www.datejs.com/test/). Es una buena biblioteca que usan muchas personas. –

+2

Mejor aún, comience a actualizarlo usted mismo. Tendrás una increíble biblioteca de fechas de JS, y al mejorarla y poner tus mejoras a disposición del resto de nosotros, tendremos un tiempo más fácil y tendrás fama de Internet. No se puede poner precio a la Fama de Internet. –

6

No hay nada incorporado en JavaScript que le permita formatear la visualización de una fecha como strftime.

Lo más cercano es Date().toLocaleString(), que devuelve la fecha como una cadena formateada de acuerdo con la zona horaria local.

Cuestiones relacionadas