npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@aqkj/date

v1.0.6

Published

方便的时间日期操作工具

Downloads

24

Readme

ZDate

方便的日期操作工具 :monkey:

安装说明

npm i -S @aqkj/date

使用说明

import { ZDate } from '@aqkj/date'

/* 创建ZDate对象 */
ZDate('2020-12-12') // 通过字符串创建
ZDate(1583404222239) // 通过时间戳
ZDate(new Date()) // 通过时间对象

/* 格式化日期 */
ZDate().format('YYYY-MM-DD HH:mm:ss.SSS')
ZDate(1583404222239).format('YYYY-MM-DD HH:mm:ss.SSS')

/* 时间减法 */
ZDate().sub(1, 'day').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1天
ZDate().sub(1, 'month').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1个月
ZDate().sub(1, 'year').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1年
ZDate().sub(1, 'hour').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1小时
ZDate().sub(1, 'minute').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1分钟
ZDate().sub(1, 'second').format('YYYY-MM-DD HH:mm:ss.SSS') // 减去1秒

/* 时间加法 */
ZDate().add(1, 'day').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一天
ZDate().add(1, 'month').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一个月
ZDate().add(1, 'year').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一年
ZDate().add(1, 'hour').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一小时
ZDate().add(1, 'minute').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一分钟
ZDate().add(1, 'second').format('YYYY-MM-DD HH:mm:ss.SSS') // 加上一秒

/* 时间差 */
ZDate().diff('2019-10-10') // 计算时间差,返回时间戳
ZDate().diff('2019-10-10', 'day') // 返回天数差
ZDate().diff('2019-10-10', 'month') // 返回月份差
ZDate().diff('2019-10-10', 'year') // 返回年数差
ZDate().diff('2019-10-10', 'week') // 返回周数差
ZDate().diff('2019-10-10', 'second') // 返回秒数差
ZDate().diff('2019-10-10', 'hour') // 返回小时差
ZDate().diff('2019-10-10', 'minute') // 返回分钟差

/* 对应时间类型开始时间 */
ZDate('2020-3-16').startOf('day').format('HH:mm:ss.SSS') // 当前天开始时间
ZDate('2020-3-16 12:20:30').startOf('hour').format('HH:mm:ss.SSS') // 当前小时开始时间
ZDate('2020-3-16 12:20:00').startOf('minute').format('HH:mm:ss.SSS') // 当前分钟开始时间
ZDate('2020-3-16 12:20:00').startOf('month').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前月开始时间
ZDate('2020-3-16 12:20:00').startOf('quarter').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前季度开始时间
ZDate('2020-3-16 12:20:00').startOf('second').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前秒开始时间
ZDate('2020-3-16 12:20:00').startOf('week').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前周开始时间
ZDate('2020-3-16 12:20:00').startOf('year').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前年开始时间

/* 对应时间类型结束时间 */
ZDate('2020-3-16').endOf('day').format('HH:mm:ss.SSS') // 当前天结束时间
ZDate('2020-3-16 12:20:30').endOf('hour').format('HH:mm:ss.SSS') // 当前小时结束时间
ZDate('2020-3-16 12:20:00').endOf('minute').format('HH:mm:ss.SSS') // 当前分钟结束时间
ZDate('2020-3-16 12:20:00').endOf('month').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前月结束时间
ZDate('2020-3-16 12:20:00').endOf('quarter').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前季度结束时间
ZDate('2020-3-16 12:20:00').endOf('second').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前秒结束时间
ZDate('2020-3-16 12:20:00').endOf('week').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前周结束时间
ZDate('2020-3-16 12:20:00').endOf('year').format('YYYY-MM-DD HH:mm:ss.SSS') // 当前年结束时间

/* 获取对应时间类型/设置对应时间类型数值 */
ZDate('2020-3-16').day() // 获取当前周几
ZDate('2020-3-16').day(1) // 设置当前周几 0-6

ZDate('2020-3-16 12:20:30').year() // 获取当前几几年
ZDate('2020-3-16 12:20:30').year(2019) // 设置当前年

ZDate('2020-3-16 12:20:30').quarter() // 获取当前季度
ZDate('2020-3-16 12:20:30').quarter() // 设置当前季度 1-4

ZDate('2020-3-16 12:20:30').date() // 获取当前几号
ZDate('2020-3-16 12:20:30').date(30) // 设置当前几号

ZDate('2020-3-16 12:20:30').month() // 获取当前月份
ZDate('2020-3-16 12:20:30').month(11) // 设置当前月份 0-11

ZDate('2020-3-16 12:20:30').millisecond() // 获取当前毫秒
ZDate('2020-3-16 12:20:30').millisecond(999) // 设置当前毫秒

ZDate('2020-3-16 12:20:30').second() // 获取当前秒
ZDate('2020-3-16 12:20:30').second(12) // 设置当前秒

ZDate('2020-3-16 12:20:30').minute() // 获取当前分钟
ZDate('2020-3-16 12:20:30').minute(12) // 设置当前分钟

ZDate('2020-3-16 12:20:30').hour() // 获取当前小时
ZDate('2020-3-16 12:20:30').hour(12) // 设置当前小时

/* 判断时间大小/时间相同 */
const date = ZDate('2020-3-16 12:20:30')
 // 判断是否在对应时间之前
date.isBefore('2020-03-05')
date.isBefore('2020-03-30')
// 判断是否在对应时间之后
date.isAfter('2020/03/04')
date.isAfter(new Date('2020/03/20'))
date.isAfter(new Date('2020/03/10').getTime())
date.isAfter(ZDate(new Date('2020/03/10').getTime()))
// 判断是否和对应时间相同
date.isSame(ZDate(new Date('2020/03/16').getTime()))
date.isSame(new Date('2020/03/16'))
date.isSame('2020/03/16')
date.isSame(1584512884678)

Todo

  • [x] 时间格式化
  • [x] 时间加减法
  • [x] 时差计算
  • [x] 对应时间类型开始和结束时间
  • [x] 判断时间大小/时间相同
  • [ ] 时间间隔/相对时间
  • [x] 获取对应时间类型/设置对应时间类型数值