moment.js

    xiaoxiao2021-04-19  231

    这两天做项目常常用到都数据库中的时间进行处理,由于原生的日期格式并不是太好处理,所以选用momentjs来对日期进行一些常规的处理,momentjs对js中的date对象进行了一层封装,使之具有更加强大日期处理能力。下面说下momentjs在使用中的心得。

    Momentjs支持多个环境,既可以在浏览器中使用,也可以脱离浏览器的环境在nodejs中使用。在nodejs中使用momentjs的话需要安装moment模块,然后加载模块就行了 命令如下:

    npm install moment

    var moment = require(‘moment’);

    在浏览器中使用使用 则用<script src = “moment.js”></script>引入momentjs文件即可,使用的时候在nodejs和浏览器中并没有什么区别

    momentjs方法的使用说明如下:

    获得当前的时间

    使用moment()即可获取当前时间,相当于moment(new Date()) 此处会返回一个moment封装的日期对象

    初始化一个指定的时间

    1. 给moment()函数传递一个iso86601日期格式的对象

    var date = moment(“2015-11-26”);// iso日期格式的字符串

    2. 传入一个字符串但是后面必须要用moment支持的格式符标识一下怎么解析.

    var date  = moment(“12/25/1995”,”MM-DD-YYYY”);//传入moment支持的格式符 具体的格式符可以看文档 其实传入入格式符的方式解析时间字符串就是在 底层用了format() 

    3. 传入一个具有日期字段的对象

    var date  = moment({year:2015,month:10,day:26,hour:22});

    4. 传入一个数组,但是顺序依次为[year, month, day, hour, minute, second, millisecond] var  date  =moment([2015,10,26]);

    5. 传入一个整数 用来创建出一个从1970 UTC以来开始计时number后的时间var  date = moment(Number)

    验证传入的日期字符串是否合法使用moment对象的isValid()方法

    var m = moment(“2011-10-10T10:20:90”)

    m.isValid()// false 验证发现字符串不合法

    m.invalidAt()// 5 代表不合法的字符在seconds

    获取某个具体的时间点的值

    //获取当前时间的某位值

    moment().millisecond()===moment().get(“milisecond”)

    Moment().second() moment().hour() moment().week()//一年中的哪一周

    moment().day()//获取星期 moment().date()//获取月份中的日期

    设置某个时间点的值只需要给这些方法传入参数即可

    即:moment().date(12)===moment().set(“date”:12);

    比较传入日期的最大值最小值

    a = moment().subtract(1,”day”)//当前时间减去1天

    b = moment().add(1,”day”);//当前时间加上1天

    moment.max(a,b);

    moment.min(a,b); 

    时间差(默认返回相差的毫秒数)

    var a = moment([2007,0,29])

    var b = moment([2007,0,28])

    a.diff(b)//86400000

    a.diff(b,”days”)//1返回相差的天数

    开始结束时间

    moment().endOf(“year”)//将时间设置为今年的最后时刻

    moment().startOf(“month”)://将时间设置为这个月的开始

    将moment对象转化为Date对象

    moment().toDate()

    转载请注明原文地址: https://ju.6miu.com/read-676075.html

    最新回复(0)