Reputation: 11848
I'm looking for a way to convert a Javascript Date object to a string. I'm converting my site from Ruby to server side Javascript, and I'm looking for something analogous to strftime
in Ruby, C, and many other languages.
I found plenty of simple scripts that do this kind of conversion, but I'd prefer not to include a custom implementation if there is a standard way of doing this.
I'm not using a Javascript framework. I'm using Mozilla Rhino, but would prefer to stay away from using the Java library as much as possible, to allow moving my code easily between implementations.
I want to be able to specify the format of the string, since I want to embed it in a sentence. I want to be able to insert arbitrary on's and at's, and have the full name of the day, not just it's abbreviation. So toString() won't suffice.
Upvotes: 8
Views: 48185
Reputation: 737
MomentJS has a very robust set of time formatting options, and has also been updated recently.
Upvotes: 2
Reputation: 324727
You could use my JavaScript implementation of Java's SimpleDateFormat: http://www.timdown.co.uk/code/simpledateformat.php. It's a little lighter than date.js and is kept up to date as it is included in log4javascript.
Upvotes: 1
Reputation: 98946
There isn’t anything built into JavaScript that allows you to format the display of a date like strftime
does.
The closest is Date().toLocaleString()
, which returns the date as a string formatted according to the local time zone.
Upvotes: 6
Reputation: 82523
There is a free (and awesome) library for Javascript called Datejs that gives you all sorts of formatting and parsing capabilities (see the FormatSpecifiers documentation).
Upvotes: 9
Reputation: 39753
You could use
new Date().toString()
...to get a localized output of the date.
Upvotes: 1
Reputation: 6631
Dates have a built-in toString:
alert(new Date().toString())
"Sat Dec 19 2009 08:23:33 GMT-0800 (Pacific Standard Time)"
Upvotes: 2