Moment

用于解析,验证,操作和格式化日期的轻量级JavaScript日期库。(A lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates.)

Github stars Tracking Chart

用于解析,验证,操作和格式化日期的轻量级JavaScript日期库。

Moment设计用于在浏览器和Node.js中工作。所有代码都应在这两种环境中工作,所有单元测试都在这两种环境中运行。目前,ci系统使用以下浏览器:Windows XP上的Chrome,Windows 7上的IE 8,9和10,Windows 10上的IE 11,Linux上的最新Firefox和OSX 10.8和10.11上的最新Safari。

Format Dates

<code>moment().format(<span class="string">'MMMM Do YYYY, h:mm:ss a'</span>);moment().format(<span class="string">'dddd'</span>);moment().format(<span class="string">"MMM Do YY"</span>);moment().format(<span class="string">'YYYY [escaped] YYYY'</span>);moment().format();</code>

Relative Time

<code>moment(<span class="string">"20111031"</span>, <span class="string">"YYYYMMDD"</span>).fromNow();moment(<span class="string">"20120620"</span>, <span class="string">"YYYYMMDD"</span>).fromNow();moment().startOf(<span class="string">'day'</span>).fromNow();moment().endOf(<span class="string">'day'</span>).fromNow();moment().startOf(<span class="string">'hour'</span>).fromNow();</code>

Calendar Time

<code>moment().subtract(<span class="number">10</span>, <span class="string">'days'</span>).calendar();moment().subtract(<span class="number">6</span>, <span class="string">'days'</span>).calendar();moment().subtract(<span class="number">3</span>, <span class="string">'days'</span>).calendar();moment().subtract(<span class="number">1</span>, <span class="string">'days'</span>).calendar();moment().calendar();moment().add(<span class="number">1</span>, <span class="string">'days'</span>).calendar();moment().add(<span class="number">3</span>, <span class="string">'days'</span>).calendar();moment().add(<span class="number">10</span>, <span class="string">'days'</span>).calendar();</code>

Overview

Name With Ownermoment/moment
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 3)
Platform
License:MIT License
Release Count89
Last Release Name2.30.1 (Posted on 2023-12-27 12:37:06)
First Release Name0.3.0 (Posted on 2011-03-25 08:43:45)
Created At2011-03-01 02:46:06
Pushed At2024-04-02 12:56:01
Last Commit At2023-12-27 12:35:18
Stargazers Count47.8k
Watchers Count873
Fork Count7k
Commits Count4.1k
Has Issues Enabled
Issues Count4103
Issue Open Count208
Pull Requests Count714
Pull Requests Open Count32
Pull Requests Close Count1320
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

Join the chat at https://gitter.im/moment/moment

NPM version NPM downloads MIT License Build Status
Coverage Status
FOSSA Status
SemVer compatibility

A lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates.

Documentation

Port to ECMAScript 6 (version 2.10.0)

Moment 2.10.0 does not bring any new features, but the code is now written in
ECMAScript 6 modules and placed inside src/. Previously moment.js, locale/*.js and
test/moment/*.js, test/locale/*.js contained the source of the project. Now
the source is in src/, temporary build (ECMAScript 5) files are placed under
build/umd/ (for running tests during development), and the moment.js and
locale/*.js files are updated only on release.

If you want to use a particular revision of the code, make sure to run
grunt transpile update-index, so moment.js and locales/*.js are synced
with src/*. We might place that in a commit hook in the future.

Upgrading to 2.0.0

There are a number of small backwards incompatible changes with version 2.0.0. See the full descriptions here

  • Changed language ordinal method to return the number + ordinal instead of just the ordinal.

  • Changed two digit year parsing cutoff to match strptime.

  • Removed moment#sod and moment#eod in favor of moment#startOf and moment#endOf.

  • Removed moment.humanizeDuration() in favor of moment.duration().humanize().

  • Removed the lang data objects from the top level namespace.

  • Duplicate Date passed to moment() instead of referencing it.

Changelog

Contributing Open Source Helpers

We're looking for co-maintainers! If you want to become a master of time please
write to ichernev.

In addition to contributing code, you can help to triage issues. This can include reproducing bug reports, or asking for vital information such as version numbers or reproduction instructions. If you would like to start triaging issues, one easy way to get started is to subscribe to moment/moment on CodeTriage.

License

Moment.js is freely distributable under the terms of the MIT license.

FOSSA Status

To the top