### Parsing

    m = moment('2013-03-01', 'YYYY-MM-DD')

This parses the given date using the given format. Returns a moment object.

### Formatting

    m.format()            // "2013-03-01T00:00:00+01:00"
    m.format('dddd')      // "Friday"
    m.format('MMM Do YY') // "Mar 1st 13"
    m.fromNow()           // "7 years ago"
    m.calendar()          // "03/01/2013"

### Add

    m.add(1, 'day')
    m.subtract(2, 'days')

    m.startOf('day')
    m.endOf('day')
    m.startOf('hour')

### Internationalization

    .format('L')      // 06/09/2014
    .format('l')      // 6/9/2014
    .format('LL')     // June 9 2014
    .format('ll')     // Jun 9 2014
    .format('LLL')    // June 9 2014 9:32 PM
    .format('lll')    // Jun 9 2014 9:32 PM
    .format('LLLL')   // Monday, June 9 2014 9:32 PM
    .format('llll')   // Mon, Jun 9 2014 9:32 PM

See datetime for more.

## Formatting

### Examples

#### Date

Example | Output
--- | ---
`YYYY-MM-DD` | 2014-01-01
`dddd, MMMM Do YYYY` | Friday, May 16th 2014
`dddd [the] Do [of] MMMM` | Friday the 16th of May

#### Time

Example | Output
--- | ---
`hh:mm a` | 12:30 pm

Used by Moment.js and date-fns/format. Similar to Java SimpleDateFormat.

### Date

Symbol | Example | Area
--- | --- | ---
`d` | `0`..`6` | Weekday
`dd` | `Su` |
`ddd` | `Sun` |
`dddd` | `Sunday` |
`YY` | `13` | Year
`YYYY` | `2013` |
`M` | `1`..`12` (Jan is 1) | Month
`Mo` | `1st`..`12th` |
`MM` | `01`..`12` (Jan is 1) |
`MMM` | `Jan` |
`MMMM` | `January` |
`Q` | `1`..`4` | Quarter
`Qo` | `1st`..`4th` |
`D` | `1`..`31` | Day
`Do` | `1st`..`31st` |
`DD` | `01`..`31` |
`DDD` | `1`..`365` | Day of year
`DDDo` | `1st`..`365th` |
`DDDD` | `001`..`365` |
`w` | `1`..`53` | Week of year
`wo` | `1st`..`53rd` |
`ww` | `01`..`53` |

### Time

Symbol | Example | Area
--- | --- | ---
`H` | `0`..`23` | 24h hour
`HH` | `00`..`23` |
`h` | `1`..`12` | 12h hour
`hh` | `01`..`12` |
`m` | `0`..`59` | Minutes
`mm` | `00`..`59` |
`s` | `0`..`59` | Seconds
`ss` | `00`..`59` |
`a` | `am` | AM/PM
`A` | `AM` |
`Z` | `+07:00` | Timezone offset
`ZZ` | `+0730` |
`S` | `0`..`9` | Deciseconds
`SS` | `00`..`99` | Centiseconds
`SSS` | `000`..`999` | Milliseconds
`X` |  | Unix timestamp
`x` |  | Millisecond Unix timestamp

### Presets

Example | Output
--- | ---
`LT` | 8:30 PM
`LTS` | 8:30:25 PM
`LL` | August 2 1985
`ll` | Aug 2 1985
`LLL` | August 2 1985 08:30 PM
`lll` | Aug 2 1985 08:30 PM
`LLLL` | Thursday, August 2 1985 08:30 PM
`llll` | Thu, Aug 2 1985 08:30 PM

## References

### Alternatives

- You don’t need Moment.js (github.com)

### Also see

- Datetime cheatsheet (devhints.io)
- Moment website (momentjs.com)
- Moment docs (momentjs.com)

0 Comments for this cheatsheet. Write yours!