什么是MomentJS
MomentJs 是一个开源的JavaScript库,用于操作和解析日期对象。 每个开发者在他们的项目开发中都需要知道如何操作日期和时间。
JavaScript有一个日期对象,开发者必须写大量的代码来操作日期和时间对象,而且没有灵活的方法来解析和验证该对象。
在JavaScript中,有很多日期和时间库。MomentJS 是javascript应用程序中最流行的库之一。
Moments库可以用于普通的基于网络的JavaScript/jQuery应用程序,也可以用于NodeJS/typescript应用程序。
MomentJS是一个激动人心的库,不依赖任何框架,可以用于前端和后端的Javascript应用。
我们可以通过以下不同方式配置momentjs
在HTML的脚本标签中使用momentjs
可以从 momentjs 官方网站下载最新的库,也可以在脚本标签中使用momentjs 的 cdn 网址。
<html>
<head>
<script src="pathto/moment.js"></script>
<script>
moment().format();
</script>
</head>
<body>
</body>
</html>
在nodejs环境中使用npm包
这有npm包用于nodejs应用。
我们可以使用node包管理器或yarn命令来安装这个依赖关系
npm install moment --save
yarn add moment
首先,你必须使用npm命令安装 moment js 库。
在typecript代码中,使用下面的代码,就像这样
import * as moment from moment ;
let now = moment();
进入下一节,我们将看到各种momentjs 示例
如何使用momentJS在javascript中获取当前日期和时间
Moment对象有一个空的构造函数,它给出了当前的日期和时间
<html>
<head>
<title>Moment.js Example Current Date and time</title>
</head>
<body>
<H1> javascript example for Current Date and Time </H1>
<div id="showCurrentDateMomentJs"></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="lib/moment.js"></script>
<script>
var CurrentDateAndTime = document.getElementById('showCurrentDateMomentJs');
var CurrentDateAndTimeMoment = moment();
CurrentDateAndTime.innerHTML=CurrentDateAndTimeMoment;
</script>
</body>
</html>
输出是Thu Jul 05 2018 12:08:47 GMT+0530
MomentJs格式实例
使用Format方法,我们可以将日期格式化为各种格式,也可以验证日期。
下面的代码返回各种格式的日期
moment().format() - 018-07-11T12:04:35+05:30
moment().format('dd')- Wed
moment().format("MMM Do YYYY") - Jul 11th 2018
在字符串格式化过程中,任何字符如连字符(-)或斜线(/)都不会被考虑。
moment('01-12-2018').format('MM/DD/YYY') - 01-12-2018
瞬间format ,使用isValid方法来检查传递的值是否为日期格式。
var m = moment("2018-20-08",'YYYY-DD-MM');
m.isValid() //returns true
var m1 = moment("20-08-2018");
m1.isValid() // returns false
要启用时区功能,需要添加momentJS 时区库
moment.utc().format('YYYY-MM-DD HH:mm:ss')
UTC time is 2018-07-10 16:06:39
//below code convert UTC to local timezone
var currentLocalTime = moment.utc('2018-07-10 16:06:39').toDate();
localTimeFromUTC = moment(currentLocalTime).format('YYYY-MM-DD HH:mm:ss');
Your Local Time related to UTC as mentioned above 2018-07-10 21:36:39`