web-dev-qa-db-ja.com

moment.jsを使用して日付形式を変換する

Javascripy/jQueryを使用して次の日付を変換したいと思います。私の調査では、moment.jsが素晴らしく見えることを指摘しているようですが、それを釘付けにすることはできません。 (JSセミヌーブ)

<div class="date">01-06-2012</div> convert to display January 6
<div class="date">05-14-2012</div> convert to display May 14
<div class="date">06-16-2012</div> to display June 16

また、日付が過去24時間以内であれば、同じロジックでdivに追加のクラスを適用できると便利なので、スタイルを少し変えることができます。たぶん、過去24時間以内の日付にクラスを追加し、日付の代わりに「新規」を表示させます。

ありがとう!

9
Mark Mitchell
_$(function () {
  $('.date').each(function (index, dateElem) {
    var $dateElem = $(dateElem);
    var formatted = moment($dateElem.text(), 'MM-DD-YYYY').format('MMMM D');
    $dateElem.text(formatted);
   })
 });​
_

http://jsfiddle.net/x2fDP/

パート2では、new Date().getTime() - textMoment.valueOf()(textMomentはdivのテキストから作成された解析済みモーメントインスタンス)を使用して、その日付が何ミリ秒前であったかを取得し、その数値がしきい値を下回っている場合は、$dateElem.addClass('new');

23
Peter Lyons