同时兼容浏览器和node

    1. import dayjs from 'dayjs'
    2. // import * as dayjs from 'dayjs'
    3. dayjs() // 当前时间
    4. dayjs().format()

    tsconfig.json

    1. { //tsconfig.json
    2. "compilerOptions": {
    3. "esModuleInterop": true,
    4. "allowSyntheticDefaultImports": true,
    5. }
    6. }

    本地化语言

    1. import isLeapYear from 'dayjs/plugin/isLeapYear' // 闰年
    2. import 'dayjs/locale/zh-cn'
    3. dayjs.extend(isLeapYear) // 使用插件
    4. dayjs.locale('zh-cn') // 本地化语言

    格式化 YYYY-MM-DD HH:mm:ss就足够了

    时区。默认格式化是本地时间,不需要考虑 UTC 的问题,除非使用 utc 插件

    时间日期取值。dayjs().second(),可以取值可以赋值。显然这里支持 second/millisecond/minute/hour/date日期/day星期几0星期日-6星期六/

    日期操作。dayjs().add(1,'day').subtract(1,'year')增加减少单位。

    获取起止日期。dayjs().startOf('year')获取年份。endOf('monnth')终止。

    多个日期的 a.diff(b)

    插件用法:

    • custom
    • ObjectSupport 这个使用来出传递对象设置时间的,作用不大
    • ArraySupport 传递数据的长度,一次表示各个时间节点,注意月份0,作用不大
    • toArray日期转成数组。
    • utc 插件,进入UTC时间
    • isoWeek要 extend 使用,这个一定要用,我们默认周一是第一天 dayjs().isoWeekday(1)
    • weekdayjsextend 先,今天星期几,可以设置 0,这取决于 isoWeek 的设置
    • dayOfYearextend先,获取、设置年份的第几天
    • weekOfYearextend先,获取、设置今年的第几周
    • quarterOfYearextend先,获取、设置季度
    • weekYear``weekOfYear获取按周计算的年份
    • relativeTime相对时间 dayjs().fromNow() 几秒前,如何自定义 https://dayjs.gitee.io/docs/zh-CN/display/from-now
    • calendar日历时间,举例跟定时间到现在的相对时间,相对日期