javascirptで日付のフォーマット、パースをするのには、いつも苦労します。ライブラリがないわけではないのですが、標準が不在なので判断に困るのです。そこで、一般的なライブラリでの実装状況を調べてみました。
AngularJS
文字列へのフォーマットはできるが、文字列からのパースはできない
$filter('date')(new Date(), 'yyyy-MM-dd')
jQuery UI
非公開メソッドのため、将来のバージョンで予告なく削除される可能性あり。jQuery Coreには存在しない。
$.datepicker.parseDate('yy-mm-dd', '2014-05-30')
$.datepicker.formatDate('yy-mm-dd', new Date())
Sugar.js
文字列へのフォーマットはできるが、文字列からのパースはフォーマットを指定できない
new Date().format("{yyyy}-{MM}-{dd}")
Memoment.js(日付処理ライブラリ)
moment().format('YYYY-MM-DD', new Date())
moment('2014-05-30', 'YYYY-MM-DD');
その他
backbone.jsでは任意のフォーマットを指定できないっぽい
YUIは、指定方法が特殊で汎用性がない
prototype.jsでは任意のフォーマットを指定できないっぽい
まとめ
あらためて調べて見て、なんてひどいんだとし思えなかったのですが、そういうカオスなところも含めてjavascriptの愛らしさ。
それはともかく、jQuery UIのparseDate / formatDateがとても便利なので、せめてこれを非公式実装ではなく、公式な仕様にしてほしい今日この頃です。
あまり網羅的じゃないと思うので、追加情報をコメント欄で教えていただければ追記します。