初始化
datex(dateStr|Array|Object|)
通过多个参数初始化
运行:datex(2018,8,8)
通过时间字符串初始化
运行:datex('2018-08-08')
运行:datex('20180808')
运行:datex('2018-04-04T16:00:00.000Z')
通过自定义格式初始化
运行:datex('2018年4月3号','YYYY年MM月DD号')
通过时间对象初始化
运行:datex({year:2008,month:8,day:8,hour:8,minute:0,second:0})
通过时间数组初始化
运行:datex([2018,8,8,8,8,0])
通过时间戳
运行:datex(1218124800000)
通过原生Date实例对象
运行:datex(new Date('2018-08-08'))
无参数初始化
运行:datex()
返回格式化时间
format(pattern)
运行:datex(2022,10,1).format('YYYY-MM-DD HH:mm:ss')
返回:2022-10-01 00:00:00
运行:datex(1671761818503).format('YYYY/MM/DD')
返回:2022/12/23
运行:datex(1671761818503).format(function(toObject){...})
输入 | 示例 | 描述 |
---|---|---|
YY | 18 | 两位数的年份 |
YYYY | 2018 | 四位数的年份 |
M | 1-12 | 月份,从 1 开始 |
MM | 01-12 | 月份,两位数 |
MMM | 1月-12月/Jan-Dec | 缩写的月份名称 |
MMMM | 一月-十二月/January-December | 完整的月份名称 |
D | 1-31 | 月份里的一天 |
DD | 01-31 | 月份里的一天,两位数 |
H | 0-23 | 小时 |
HH | 00-23 | 小时,两位数 |
h | 1-12 | 小时, 12 小时制 |
hh | 01-12 | 小时, 12 小时制, 两位数 |
m | 0-59 | 分钟 |
mm | 00-59 | 分钟,两位数 |
s | 0-59 | 秒 |
ss | 00-59 | 秒,两位数 |
S | 0-9 | 毫秒,一位数 |
SS | 00-99 | 毫秒,两位数 |
SSS | 000-999 | 毫秒,三位数 |
Z | -05:00 | UTC 的偏移量 |
ZZ | -0500 | UTC 的偏移量,两位数 |
A | AM / PM | 上午 下午 大写 |
a | am / pm | 上午 下午 小写 |
W | 0 | 0-6,分别表示星期日-星期六 |
WW | 周一 | 周x |
WWW | 星期日 | 星期x |
Do | 1st... 31st | 带序数词的月份里的一天 |
x | 1410715640 | Unix时间戳(秒) |
X | 1410715640579 | Unix时间戳(毫秒) |
返回时间戳(毫秒)
getTime()
运行:datex().getTime()
返回:1670768193313
返回时间戳(秒)
getUnix()
运行:datex().getUnix()
返回:1670768193
返回克隆对象
clone()
运行:datex().clone()
返回原生Date对象
toDate()
运行:datex().toDate()
返回:Sun Dec 11 2022 22:20:20 GMT+0800 (中国标准时间)
返回时间字段对象
toObject()
运行:datex().toObject()
返回:
{
year:2022,
month:12,
day:11,
hour:22,
minute:23,
second: 14,
millsecond:612,
timestamp:1670768594612,
week:0
}
返回时间字段数组
toArray()
运行:datex().toArray()
返回:[2022,12,11,22,23,14,612]
返回字符串
toString()
运行:datex().toString()
返回:Wed Apr 12 2023 15:19:41 GMT+0800 (中国标准时间)
返回ISO字符串
toISOString()
运行:datex().toISOString()
返回:2023-04-12T07:20:23.363Z
设置某字段值
set(name,value)
运行:datex(2022,10,1).set('year',2020).format()
返回:2020-10-01 00:00:00
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
增减某字段值
change(name,value)
运行:datex(2022,10,1).change('year',1).format()
返回:2022-10-01 00:00:00
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
获取某字段起始时
startOf(name)
运行:datex(2022,10,10).startOf('month').format()
返回:2022-10-01 00:00:00
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
获取某字段末尾时
endOf(name)
运行:datex(2022,10,10).endOf('month').format()
返回:2022-10-31 23:59:59
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
返回某字段值
get(name)
运行:datex(2022,10,1).get('year')
返回:2020
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
是否在某个时间点之前
isBefore(dateStr|datex,name)
运行:datex('2008-08-08').isBefore('2022-02-02')
返回:true
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
是否在某个时间点之后
isAfter(dateStr|datex,name)
运行:datex('2008-08-08').isAfter('2022-02-02')
返回:false
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
是否和某个时间点相等
isSame(dateStr|datex,name)
运行:datex('2008-08-08').isSame('2022-02-02')
返回:false
运行:datex('2008-08-08').isSame('2018-02-02','year')
返回:true
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
是否在两个时间点之间
isBetween(dateStr|datex,dateStr|datex,name)
运行:datex('2008-08-08').isBetween('2003-07-13','2022-02-02')
返回:true
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
timestamp | 时间戳 |
week | 周几 |
是否为有效对象
isValid()
运行:datex('2008-13-12').isValid()
返回:false
与某时间点差值
diffWith(dateStr|datex,name)
运行:datex('1949-10-01').diffWith()
返回:【时长对象】
运行:datex('1949-10-01').diffWith('2022-12-01')
返回:【时长对象】
运行:datex('1949-10-01').diffWith('2022-12-01','month')
返回:-878
运行:datex('1949-10-01').diffWith('2022-12-01').toObject()
返回:{"year":-73,"month":-2,"day":0,"hour":0,"minute":0,"second":0,"millsecond":0,"value": -2308953600000}
运行:datex('1997-07-01').diffWith('1949-10-01').format('Y年M个月D天')
返回:'47年9个月0天'
运行:datex('1997-07-01').diffWith('1949-10-01').format(function(toObject){...})
单位 | 说明 |
---|---|
year | 年 |
month | 月 |
day | 日 |
hour | 小时 |
minute | 分钟 |
second | 秒 |
millsecond | 毫秒 |
获取支持时区列表
supportedTimezones
支持的时区
运行:datex.supportedTimezones
返回:['Africa/Abidjan', 'Africa/Accra', 'Africa/Addis_Ababa', 'Africa/Algiers', 'Africa/Asmera', 'Africa/Bamako',...]
返回当前时间戳(毫秒)
now()
全局设置
运行:datex.now()
时长处理
duration()
初始化,返回【时长对象】
运行:datex.duration(2,'day')
运行:datex.duration({'day':1,'hour':2,'minute':3})
运行:datex.duration(10000000)
获取时长
运行:datex.duration(2,'day').get('second')
修改时长
运行:datex.duration(2,'day').change('second',-1)
格式化时长
运行:datex.duration(2,'day').format('HH:mm:ss')
运行:datex.duration(2,'day').format(function(toObject){...})
输入 | 示例 | 描述 |
---|---|---|
Y+ | 0-99 | 年 |
M+ | 0-99 | 月 |
D+ | 0-99 | 天 |
H+ | 0-99 | 小时 |
m+ | 0-99 | 分钟 |
s+ | 0-99 | 秒 |
S+ | 0-999 | 毫秒 |
插件扩展
extend()
全局设置
运行:datex.extend(pluginsLoader)
获取当前时区与UTC的时间差(分钟)
getTimezoneOffset()
全局设置
运行:datex.switchTimezone("Europe/Berlin").getTimezoneOffset()
返回:-60
实例设置
运行:datex().switchTimezone("Europe/Berlin").getTimezoneOffset()
返回:-60
设置语言包
setLanguage(lang,data)
全局设置
运行:datex.setLanguage('zh-CN',{'w':['周日','周一','周二','周三','周四','周五','周六']})
实例设置
运行:datex().setLanguage('zh-CN',{'w':['周日','周一','周二','周三','周四','周五','周六']})
切换语言包
switchLanguage(lang)
全局设置
运行:datex.switchLanguage('en-US')
实例设置
运行:datex().switchLanguage('en-US')
获取时区
getTimezone()
全局获取
运行:datex.getTimezone()
返回:'Asia/Shanghai'
实例获取
运行:datex().getTimezone()
返回:'Asia/Shanghai'
切换时区
switchTimezone(timezone)
* 时区切换只改变时间字符串显示,即format方法及初始化过程,时间戳不会相应改变
全局设置
运行:datex.switchTimezone('Asia/Tokyo')
实例设置
运行:datex().switchTimezone('Asia/Tokyo')
Copyright © haiyong.site