当前日期格式化

let curTime = moment().format('YYYY-MM-DD HH:mm:ss')
console.log('当前日期时间curTime:' + curTime)//curTime:2019-01-30 10:21:11

指定日期格式化

let a = '20190130'
let aFormat = moment(a).format('YYYY-MM-DD')
console.log('aFormat:' + aFormat)//aFormat:2019-01-30

日期操作

//距离当前时间:七天
let sevenDaysAgo = moment().subtract(7, 'days').format('YYYY-MM-DD')
console.log('sevenDaysAgo:' + sevenDaysAgo)//sevenDaysAgo:2019-01-23 //距离当前时间:一周
let oneWeekAgo = moment().subtract(1, 'weeks').format('YYYY-MM-DD')
console.log('oneWeekAgo:' + oneWeekAgo)//oneWeekAgo:2019-01-23 //距离当前时间:三个月
let threeMonthsAgo = moment().subtract(3, "months").format("YYYY-MM-DD")
console.log('threeMonthsAgo:' + threeMonthsAgo)//threeMonthsAgo:2018-10-30 //距离当前时间:一年
let oneYearAgo = moment().subtract(1, "years").format("YYYY-MM-DD")
console.log('oneYearAgo:' + oneYearAgo)//oneYearAgo:2018-01-30
减法,对应于:subtract()方法
加法,对应于:add()方法

根据身份证号码获得周岁年龄

let idCardNumber = '234567199302019929'
let birthday = idCardNumber.slice(6, 14)
console.log('出生日期:' + birthday)//出生日期:19930201
console.log('当前日期:' + moment().format("YYYY-MM-DD"))//当前日期:2019-01-30
let age = moment().diff(moment(birthday), 'years')
console.log('周岁年龄:' + age)//周岁年龄:25

日期与时间戳之间的转换

当涉及到日期的时间轴拖拽,那么通常需要把日期转换成时间戳来进行操作

//将日期转换成时间戳
//moment().valueOf()
//new Date().getTime()
//Date.parse(new Date()) let timestamp1 = moment().unix();
let timestamp2 = moment().valueOf();
let timestamp3 = new Date().getTime();
let timestamp4 = Date.parse(new Date()); //将时间戳转换成日期 moment(时间戳).format() let timestampToDate1 = moment(timestamp1).format("YYYY-MM-DD");
let timestampToDate2 = moment(timestamp2).format("YYYY-MM-DD");
let timestampToDate3 = moment(timestamp3).format("YYYY-MM-DD");
let timestampToDate4 = moment(timestamp4).format("YYYY-MM-DD"); console.log('timestamp1:' + timestamp1);//timestamp1:1550657032
console.log('timestamp2:' + timestamp2);//timestamp2:1550657032279
console.log('timestamp3:' + timestamp3);//timestamp3:1550657032279
console.log('timestamp4:' + timestamp4);//timestamp4:1550657032000 console.log('timestampToDate1:' + timestampToDate1);//timestampToDate1:1970-01-19
console.log('timestampToDate2:' + timestampToDate2);//timestampToDate2:2019-02-20
console.log('timestampToDate3:' + timestampToDate3);//timestampToDate3:2019-02-20
console.log('timestampToDate4:' + timestampToDate4);//timestampToDate4:2019-02-20

由上面的案例测试可知:

  1. moment().unix() 获得的时间戳单位为秒
  2. moment().valueOf() 等同于 new Date().getTime() 获得的时间戳单位为毫秒
  3. Date.parse() 得到的值是以毫秒为单位的,且后三位默认为0,即不具体到毫秒
  4. 如果想将时间戳转化为日期,moment的参数必须是毫秒为单位的,它就是识别为毫秒的,如果不是的话,会使结果出错

最新文章

  1. swing中JTable的使用方法
  2. IE下new Date不支持传参数的解决
  3. c++学习--继承与派生
  4. 网页上传图片 判断类型 检测大小 剪切图片 ASP.NET版本
  5. Android基础知识回顾
  6. Spring 装配Bean
  7. 【程序员联盟】官网上线啦!coderunity.com
  8. Normalize.css & Reset
  9. tomcat编译超过64k大小的jsp文件报错原因
  10. 构建Docker Compose服务堆栈
  11. H - Being a Good Boy in Spring Festival
  12. bash 替换特殊字符
  13. [UE4]保存玩家列表
  14. BFS搜索算法应用_Codevs 1004 四子连棋
  15. delphi CreateAnonymousThread 匿名线程
  16. MHA之Binlog Dump (GTID)僵尸进程清理
  17. BinaryFormatter、SoapFormatter、XML3种序列化
  18. Microsoft Windows XP Professional X64 Edition Corporate Keys
  19. 一款基于的jQuery仿苹果样式焦点图插件
  20. 自己定义一个tab指令

热门文章

  1. 学习日记13、ajax同时提交from表单和多个参数
  2. apache主要配置详解
  3. 如何查看MySQL数据库的版本
  4. ANTLR4加载csv数据
  5. DVBS/S2功能
  6. Vue-数据绑定原理
  7. js对url的编码和解码
  8. SQLServer2008查询时对象名无效
  9. 12.定义Lock类,用于锁定数据.三步走,锁的优缺点
  10. JS的两种函数声明方式的区别