首页 > 其他分享 >前端依赖-时间管理工具(moment.js)详细使用文档

前端依赖-时间管理工具(moment.js)详细使用文档

时间:2024-12-25 11:43:12浏览次数:4  
标签:console log format 管理工具 js YYYY moment date

1.安装和引入

npm i moment //安装

import moment from 'moment'; //引入

2.基本使用
(1)获取当前时间

(2)格式化时间:

①年份:

YYYY    四位数字完整表示的年份    如:2014 或 2000

YY    两位数字表示的年份    如:14 或 98   

②月份:

MMMM    月份,完整的文本格式    January到December

MMM    三个字母缩写表示的月份    Jan到Dec

MM    数字表示的月份,有前导零    01到12

M    数字表示的月份,没有前导零    1到12

③季度:

Q    季度    1到4

④日:

DD    月份中的第几天,有前导零    01到31

D    月份中的第几天,没有前导零    1到31

⑤星期:

dddd    星期几,完整的星期文本    从Sunday到Saturday

ddd    三个字母表示星期中的第几天    Sun到Sat

d    星期中的第几天,数字表示    0到6,0表示周日,6表示周六

w    年份中的第几周    如42:表示第42周

⑥小时:

HH    小时,24小时制,有前导零    00到23
H    小时,24小时制,无前导零    0到23
hh    小时,12小时制,有前导零    00到12
h    小时,12小时制,无前导零    0到12

A    大写的AM PM    AM PM
a    小写的am pm    am pm

⑦分钟:

mm    有前导零的分钟数    00到59

m    没有前导零的分钟数    0到59nian

⑧秒:

s    没有前导零的秒数    1到59
ss    有前导零的描述    01到59
X    Unix时间戳    141157296

利用format格式化:

经典格式化:

(3)时间获取

注:week是以周天作为初始(0)。周一(1) 即周一到周天(1-0)

isoweek则是周一作为初始(1)。周天(7) 即周一到周天(1-7)

①startOf():

②endOf():

    console.log('今日是:' + moment().format('YYYY-MM-DD HH:mm:ss'))
    //获取今日初始时间
    console.log('今日初始时间:' + moment().startOf('day').format('YYYY-MM-DD HH:mm:ss'))
    //获取本周初始时间(两种版本)
    console.log('本周周(天)初始时间为:' + moment().startOf('week').format('YYYY-MM-DD HH:mm:ss'))
    console.log('本周周(一)初始时间为:' + moment().startOf('isoweek').format('YYYY-MM-DD HH:mm:ss'))
    //获取本月第一天初始时间
    console.log('本月第一天初始时间为:' + moment().startOf('month').format('YYYY-MM-DD HH:mm:ss'))
    //获取今日末时间
    console.log('今日末时间:' + moment().endOf('day').format('YYYY-MM-DD HH:mm:ss'))
    //获取本周末尾时间(两种版本)
    console.log('本周周(六)初始时间为:' + moment().endOf('week').format('YYYY-MM-DD HH:mm:ss'))
    console.log('本周周(天)初始时间为:' + moment().endOf('isoweek').format('YYYY-MM-DD HH:mm:ss'))
    //获取本月最后一天的末时间
    console.log('本月第一天初始时间为:' + moment().endOf('month').format('YYYY-MM-DD HH:mm:ss'))

③daysInMonth() weeksInYear()

    console.log('本月有'+moment().daysInMonth()+'天')

    console.log('这是从今年的第'+moment().weeksInYear()+'周')

④年月日时分秒

注:月份是一月到十二月(0-11)

    console.log('年:'+moment().year())

    console.log('月:'+moment().month())

    console.log('日:'+moment().date())

    console.log('时:'+moment().hours())

    console.log('分:'+moment().minutes())

    console.log('秒:'+moment().seconds())

(4)日期转换

    console.log(moment().toArray())

    // [years, months, date, hours, minutes, seconds, milliseconds]

    console.log(moment().toObject())

     // {years: xxxx, months: x, date: xx ...}

(5)操作时间线

subtract vt. 减去;扣掉,即以前的时间
add vt. 增加,添加,即将来的时间
①set()

console.log(moment(time).set({year:1996,month:8,day:20}).format('YYYY-MM-DD HH:mm:ss'))

②add()

③subtract()

和add()一样操作
(6)比较时间
①diff()

②isBefore(),isAfter(),isBetween()

    let start_date = moment().subtract({year:1,month:1})

    let middle_date = moment().subtract({month:2})

    let end_date = moment()

    console.log('开始时间:'+start_date.format('YYYY-MM-DD HH:mm:ss'))

    console.log('结束时间:'+end_date.format('YYYY-MM-DD HH:mm:ss'))

    console.log(start_date.isBefore(end_date))

    console.log(start_date.isAfter(end_date))

    console.log(middle_date.isBetween(start_date,end_date))


                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/m0_63324578/article/details/144514944

标签:console,log,format,管理工具,js,YYYY,moment,date
From: https://www.cnblogs.com/baozhengrui/p/18630067

相关文章

  • jstl一些标签 中timestamp类型在页面去掉时分秒!
    jstl一些标签中timestamp类型在页面去掉时分秒!|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|--------......
  • Json转换工具类(基于google的Gson和阿里的fastjson)
    Json转换工具类(基于google的Gson和阿里的fastjson)|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------......
  • JSON
    JSON.toJSONString对象日期变为了时间戳|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------------|......
  • js判断checkbox是否被选中
    js判断checkbox是否被选中|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------------|-------------|......
  • Springboot使用RestTemplate发送Post请求postForEntity (application-json)的坑
    Springboot使用RestTemplate发送Post请求postForEntity(application-json)的坑|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||---------......
  • js压缩代码还原的vscode插件
    1.Prettier-Codeformatter:Prettier是一个非常流行的代码格式化工具,支持多种语言,包括JavaScript。它可以按照预设的规则自动格式化你的代码。对于压缩的代码,它能够很好地展开并格式化。2.Beautify:Beautify插件专为美化HTML,CSS,和JavaScript代码而设计。你可......
  • 城市JSON
    城市JSON|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------------|-------------|-------------......
  • 解决The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0.
    前言当我们要使用sass做一些炫酷的动画时候,需要用一些高阶语法例如random()以及加减乘除变量@for等等,但是sass版本过低会不支持我们的语法,在此记录下区分vue2和vue3引用sass。这里切记能用css做动效就尽量不要用js,渲染效果在越是复杂的动画就差别越大。 vue2"sass":"~1......
  • jquery数字动画插件animationCounter.js
    animationCounter.js是一款小巧的数字动画jquery插件。该jquery数字动画插件可以将数字以动画的方式从一个值变化到另外一个值。它使用简单,兼容ie8浏览器,非常实用。在线预览  下载 使用方法在页面中引入jquery和animationCounter.js文件。<scriptsrc="js/jque......
  • vue3 - vite 对于是否生成 xxx.js.map文件的开关设置-总结
    有3个办法可以设置不生成map文件1.package.json文件里的打包语句"build:docker":"vue-tsc--noEmit&&vitebuild--modedev",中,添加--noEmit参数,则不会生成map包2.vite.config.ts文件里的build.sourcemap属性,设置为false,则不会生成map包3.tsconfig.json文件里的c......