zoukankan      html  css  js  c++  java
  • moment.js的方法总结

    总结一个非常实用的日期工具类moment.js,日期获取,格式化等。
    都是以前工作中遇到的,我会在使用工具类的时候新建一个js,工作中遇到要显示什么都在这个文件里尝试,所以这个顺序是我工作中遇到然后在js文件中尝试的顺序,可能顺序稍微乱一些,但是大致没有什么问题。

    引入moment

    //require 方式
    var moment=require('moment');
    
    //import 方式
    import moment from 'moment'; 
    

    设定moment区域为中国

    //require 方式
    require('moment/locale/zh-cn')
    moment.locale('zh-cn'); 
    //import 方式
    import 'moment/locale/zh-cn'
    moment.locale('zh-cn');   
    

    格式化时间类型

    1.取当天时间,以YYYY年MM月DD日形式显示

    var now=moment().format("YYYY年MM月DD日");
    

    2.任意时间戳格式化,以YYYY-MM-DD HH:mm:ss形式显示

     var t1=moment(1411641720000).format('YYYY-MM-DD HH:mm:ss');
    

    获取前一天日期,格式以YYYY-MM-DD形式显示

    var t11=moment().day(0).format('YYYY-MM-DD');
    

    获取本周五日期,格式以YYYY-MM-DD形式显示

    var t12=moment().weekday(5).format('YYYY-MM-DD');
    

    获取上周五日期,格式以YYYY-MM-DD形式显示

    var t13=moment().weekday(-3).format('YYYY-MM-DD');
    

    可以简单理解为上周倒数第几天,上周倒数第三天就是上周五了,和当天日期无关

    获取当前年份、月份、日期

    var t14=moment().year()
    var t15=moment().month()//此处月份从0开始,当前月要+1
    var t16=moment().date();
    

    注意这个地方,日期不是.day()/days()

    结合t14,t15,t16就可以输出你想要的任何和当前日期、月份相关的日期
    例如:我想获取去年今天的完整日期,如:今天是2018-7-23,我要输出的是2017-7-23

    console.log(`${t14-1}-${t15+1}-${t16}`)
    

    当然这不是获取去年今天日期最好的办法,但你可以拼出很多你想要的组合,下面会介绍更好的获取去年今日的方法。

    获取上个月今天的日期,格式以YYYY-MM-DD显示

    var t18=moment().subtract(1, 'months').format('YYYY-MM-DD');
    

    获取上个月日期,格式以YYYY-MM显示

    var t19=moment().subtract(1, 'months').format('YYYY-MM')
    

    获取前一天日期,格式以YYYY-MM-DD显示

    var t20 = moment().subtract(1, 'days').format('YYYY-MM-DD');
    

    获取去年今天的日期,格式以YYYY-MM-DD显示,即简便的获取去年今天日期的方法

    var t21= moment().subtract(1, 'year').format('YYYY-MM-DD');
    

    获取两个小时之后的时间

    var t22=moment().add(2,'hours').format('YYYY-MM-DD HH:mm:ss');
    

    这个的应用是获取时间戳过期时间
    比较也很简单,只要获取当前时间,一样的format用><=号比较就可以了

    获取五天前的日期

    例如:今天2018-7-23,获取到的时间是2018-7-18

    var t23=moment().subtract(5, 'days').format('YYYY-MM-DD');
  • 相关阅读:
    数据结构之整数划分问题(转)
    各种排序方法的收集
    bloom filter 的Java 版
    常见面试题学习(3)
    优先级队列的Java ,C++ STL,堆实现
    常见面试题学习(2)
    常见面试题学习(5)
    常见面试题学习(4)
    常见面试题学习(1)
    bitmap与桶方式对1000万数据进行排序(转+自己实现理解)
  • 原文地址:https://www.cnblogs.com/vicky-li/p/11469104.html
Copyright © 2011-2022 走看看