从 MomentJs 到 DayJs

2023-12-04 05:52
文章标签 dayjs momentjs

本文主要是介绍从 MomentJs 到 DayJs,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从 MomentJs 到 DayJs

MomentJs

http://momentjs.cn/
Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作。如:获取时间,设置时间,格式化时间,比较时间等等

MomentJs 常用 API

获取时间

  1. 获取当前时间
    moment()

  2. 获取今天0时0分0秒
    moment().startOf('day')

  3. 获取本周第一天(周日)0时0分0秒
    moment().startOf('week')

  4. 获取本周周一0时0分0秒
    moment().startOf('isoWeek')

  5. 获取当前月第一天0时0分0秒
    moment().startOf('month')

  6. 获取今天23时59分59秒
    moment().endOf('day')

  7. 获取本周最后一天(周六)23时59分59秒
    moment().endOf('week')

  8. 获取本周周日23时59分59秒
    moment().endOf('isoWeek')

  9. 获取当前月最后一天23时59分59秒
    moment().endOf('month')

  10. 获取当前月的总天数
    moment().daysInMonth()

  11. 获取时间戳(以秒为单位)
    moment().format('X') // 返回值为字符串类型
    moment().unix() // 返回值为数值型

  12. 获取时间戳(以毫秒为单位)
    moment().format('x') // 返回值为字符串类型
    moment().valueOf() // 返回值为数值型

  13. 获取年份
    moment().year()
    moment().get('year')

  14. 获取月份
    moment().month() // (0~11, 0: January, 11: December)
    moment().get('month')

  15. 获取一个月中的某一天
    moment().date()
    moment().get('date')

  16. 获取一个星期中的某一天
    moment().day() // (0~6, 0: Sunday, 6: Saturday)
    moment().weekday() // (0~6, 0: Sunday, 6: Saturday)
    moment().isoWeekday() // (1~7, 1: Monday, 7: Sunday)
    moment().get('day')
    mment().get('weekday')
    moment().get('isoWeekday')

  17. 获取小时
    moment().hours()
    moment().get('hours')

  18. 获取分钟
    moment().minutes()
    moment().get('minutes')

  19. 获取秒数
    moment().seconds()
    moment().get('seconds')

  20. 获取当前的年月日时分秒
    moment().toArray() // [years, months, date, hours, minutes, seconds, milliseconds]
    moment().toObject() // {years: xxxx, months: x, date: xx …}

设置时间

  1. 设置年份
    moment().year(2019)
    moment().set('year', 2019)
    moment().set({year: 2019})

  2. 设置月份
    moment().month(11) // (0~11, 0: January, 11: December)
    moment().set('month', 11)

  3. 设置某个月中的某一天
    moment().date(15)
    moment().set('date', 15)

  4. 设置某个星期中的某一天
    moment().weekday(0) // 设置日期为本周第一天(周日)
    moment().isoWeekday(1) // 设置日期为本周周一
    moment().set('weekday', 0)
    moment().set('isoWeekday', 1)

  5. 设置小时
    moment().hours(12)
    moment().set('hours', 12)

  6. 设置分钟
    moment().minutes(30)
    moment().set('minutes', 30)

  7. 设置秒数
    moment().seconds(30)
    moment().set('seconds', 30)

  8. 下一年份
    moment().add(1, 'years')
    moment().add({years: 1})

  9. 下一月份
    moment().add(1, 'months')

  10. 下一天
    moment().add(1, 'days')

  11. 下一周
    moment().add(1, 'weeks')

  12. 下一小时
    moment().add(1, 'hours')

  13. 下一分钟
    moment().add(1, 'minutes')

  14. 下一秒
    moment().add(1, 'seconds')

  15. 上一年份
    moment().subtract(1, 'years')
    moment().subtract({years: 1})

  16. 上一月份
    moment().subtract(1, 'months')

  17. 上一天
    moment().subtract(1, 'days')

  18. 上一周
    moment().subtract(1, 'weeks')

  19. 上一小时
    moment().subtract(1, 'hours')

  20. 上一分钟
    moment().subtract(1, 'minutes')

  21. 上一秒
    moment().subtract(1, 'seconds')

日期格式化

格式代码说明返回值例子
M数字表示的月份,没有前导零1到12
MM数字表示的月份,有前导零01到12
MMM三个字母缩写表示的月份Jan到Dec
MMMM月份,完整的文本格式January到December
Q季度1到4
D月份中的第几天,没有前导零1到31
DD月份中的第几天,有前导零01到31
d星期中的第几天,数字表示0到6,0表示周日,6表示周六
ddd三个字母表示星期中的第几天Sun到Sat
dddd星期几,完整的星期文本从Sunday到Saturday
w年份中的第几周如42:表示第42周
YYYY四位数字完整表示的年份如:2014 或 2000
YY两位数字表示的年份如:14 或 98
A大写的AM PMAM PM
a小写的am pmam pm
HH小时,24小时制,有前导零00到23
H小时,24小时制,无前导零0到23
hh小时,12小时制,有前导零00到12
h小时,12小时制,无前导零0到12
m没有前导零的分钟数0到59
mm有前导零的分钟数00到59
s没有前导零的秒数1到59
ss有前导零的描述01到59
XUnix时间戳1411572969
  1. 格式化年月日: ‘xxxx年xx月xx日’
    moment().format('YYYY年MM月DD日')

  2. 格式化年月日: ‘xxxx-xx-xx’
    moment().format('YYYY-MM-DD')

  3. 格式化时分秒(24小时制): ‘xx时xx分xx秒’
    moment().format('HH时mm分ss秒')

  4. 格式化时分秒(12小时制):‘xx:xx:xx am/pm’
    moment().format('hh:mm:ss a')

  5. 格式化时间戳(以毫秒为单位)
    moment().format('x') // 返回值为字符串类型

  6. 其他示例
    moment().format('MMMM Do YYYY, h:mm:ss a'); // 五月 24日 2019, 7:47:43 晚上
    moment().format('dddd'); // 星期五
    moment().format("MMM Do YY"); // 5月 24日 19
    moment().format('YYYY [escaped] YYYY'); // 2019 escaped 2019
    moment().format(); // 2019-05-24T19:47:43+08:00

比较时间

let start_date = moment().subtract(1, 'weeks')
let end_date = moment()
end_date.diff(start_date) // 返回毫秒数
end_date.diff(start_date, 'months') // 0
end_date.diff(start_date, 'weeks') // 1
end_date.diff(start_date, 'days') // 7
start_date.diff(end_date, 'days') // -7

相对时间

moment().fromNow(); 

日历时间

moment().calendar(); 

国际化

import ‘moment/locale/zh-cn’
moment.locale(‘zh-cn’);

day.js

https://day.js.org/zh-CN/
Moment.js 的 2kB 轻量化方案,拥有同样强大的 API

安装:npm install dayjs

使用:dayjs()

这篇关于从 MomentJs 到 DayJs的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/452363

相关文章

dayjs将星期的第一天设置为周一

默认引入的dayjs的语言是英文,一周的开始是星期日,当使用dayjs().startOf('week')的时候,就不是周一而是周日了。 import dayjs from "dayjs"import "dayjs/locale/zh-cn"import updateLocale from "dayjs/plugin/updateLocale" // import localeData

前端中 dayjs 时间的插件使用(在vue 项目中)

Day.js中文网 这是dayjs的中文文档 里面包括了使用方法 下面我来详细介绍一下这个插件的使用 Day.js 可以运行在浏览器和 Node.js 中。 一般咱直接是 npm 安装 npm install dayjs 目前应该使用的是Es6 的语法  import dayjs from 'dayjs' 当前时间 直接调用 dayjs() 将返回一个包含当前日期和

vue时间组件:dayjs与moment

一、dayjs使用 Day.js是一个极简的JavaScript库,可以为现代浏览器解析、验证、操作和显示日期和时间。 具体使用可参考: dayjs官网         1、本年 start = dayjs().startOf('year').format('YYYY-MM-DD')end = dayjs().endOf('year').format('YYYY-MM-DD')cons

0809-vue(momentjs的使用弄时间撮日期的,父子传值props,生命周期函数beforedestroy与destroyed,黑云项目,解决相同路由跳转报错问题)

01-momentjs的使用: momentjs的官网: 直通车. <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><

dayjs

dayjs().format('YYYY-MM-DD');            // 初始化日期 dayjs().format('YYYY-MM-DD HH:mm:ss');  // 初始化日期时间 dayjs(value).format('YYYY-MM-DD');            // 初始化日期 dayjs(value).format('YYYY-MM-DD HH:mm:s

Vue中如何使用dayjs

Day.js中文网Day.js是一个极简的JavaScript库,可以为现代浏览器解析、验证、操作和显示日期和时间。https://dayjs.fenxianglu.cn/ 单位不区别大小写,支持复数和缩写形式 单位缩写描述 date D日期 [1,31]dayd星期 [0,6](星期日0,星期六6)monthM月份 [0,11] (0表示1月份)yeary年 [1,31]hourh小时 [0

vue+element下日期组件momentjs转换赋值问题

记录下使用momentjs转换日期字符串赋值给element的日期组件报错问题; <el-date-pickerv-model="form.serviceTime"type="date"class="fill-w mar-t-xs"value-format="yyyy-MM-dd HH:mm:ss"placeholder="请选择日期":clearable="false":editable="f

Dayjs使用

官方文档:安装 | Day.js中文网 相对moment.js而已,day.js的体积更小,只有2KB左右;moment.min.js 有16.7KB。 常用方法:  import dayjs from 'dayjs';// 格式化console.log(dayjs().format('YYYY-MM-DD HH:mm:ss')); // 2024-01-12 17:42:07c

JavaScript 解决dayjs在周日获取当前周第一天显示下一周第一天问题

原因:默认情况下,Day.js 将星期天视为每周的第一天。 方法:判断当天是不是周日,如果是就减一周。 import dayjs from 'dayjs'const weekday = dayjs().day() const we = weekday === 0 ? 0 - 1 : 0// dayjs().add(7, 'day')、dayjs().add(7, 'year')

JavaScript 解决dayjs在周日获取当前周第一天显示下一周第一天问题

原因:默认情况下,Day.js 将星期天视为每周的第一天。 方法:判断当天是不是周日,如果是就减一周。 import dayjs from 'dayjs'const weekday = dayjs().day() const we = weekday === 0 ? 0 - 1 : 0// dayjs().add(7, 'day')、dayjs().add(7, 'year')