首页 > 其他分享 >lua插件之----【luaDate 日期类】

lua插件之----【luaDate 日期类】

时间:2024-11-09 15:09:02浏览次数:1  
标签:11 2024 插件 12 20 luaDate ---- lua 日期

API列表 (自写API,供自查询。对您无用,不要看了) 【须知】 一、LUA中没有日期类型。在LUA中日期有二种表现方式:   1) 时间戳日期 ,比如:1731132998   2) 日期表,比如:{year=, month=, day=, hour=, min=, sec=}   二、本接口中,兼容了日期格式字符串。比如:2024-11-12 13:14   三、本AP都是精确到秒。如果想要精确到毫秒计算,请使用 os.clock()。一般这个命令用于计算脚本耗时比较多。

 
接口原型 说明
luaDate.timestamp 获取时间戳。支持日期格式字符串、日期表
luaDate.isDate 检测是否是日期。支持日期格式字符串或日期表
luaDate.split 拆分成日期
luaDate.format 格式化日期 
luaDate.comput 日期计算
luaDate.diff 返回两个日期相差秒数

原型:luaDate.timestamp(d)

@ 说明:获取时间戳。支持日期格式字符串、日期表
@ 参数:
  d [string | table 可选] 日期格式字符串或时间设置表。年月日是必需的,时分秒可选
    日期格式字符串:2024-11-11 12:12:13  或 2024/11/11 12:12:13 或 2024年11月11日 12时12分13秒
    日期表:{year=, month=, day=, hour=, min=, sec=}

@ 返回:  [number | nil] 

luaDate.timestamp() //获取当前时间戳,结果:1731132998
luaDate.timestamp({"year": 2024, "month": 11, "day": 12, "hour": 5, "min": 20, "sec": 1}) //以时间表的方式获取 2024年11月12日 5时20分1秒 的时间戳,结果:1731360001
luaDate.timestamp("2024年11月12日 5时20分1秒")//以日期字符串的方式获取 2024年11月12日 5时20分1秒 的时间戳,结果:1731360001
luaDate.timestamp("2024/11/12 5:20:1")//以日期字符串的方式获取 2024年11月12日 5时20分1秒 的时间戳,结果:1731360001

 

原型:luaDate.isDate(d)

@ 说明:检测是否是日期类型。支持日期格式字符串、日期表、时间戳

@ 参数:
  d [string | table 必需] 日期格式字符串或日期表

@ 返回:  [boolean] 

luaDate.isDate(1731360001) //结果: true
luaDate.isDate("2024/11/12 5:20:1") //结果:true
luaDate.isDate({"year": 2024, "month": 11, "day": 12, "hour": 5, "min": 20, "sec": 1}) //结果:true

 

原型:luaDate.split(d)

@ 说明:拆分成日期
@ 参数:

d [string 必需] 日期格式字符串或日期表

@ 返回:[table | nil]

格式如下:{sec : 1 , min : 20 , month : 11 , hour : 5 , isdst : false , yday : 317 , day : 12 , year : 2024 , wday : 3}

isdst  : 是否是夏令制
isdst  :一年第多少天
wday : 当前第几周

luaDate.split({"year": 2024, "month": 11, "day": 12, "hour": 5, "min": 20, "sec": 1}) // 拆分日期表,结果:{sec : 1 , min : 20 , month : 11 , hour : 5 , isdst : false , yday : 317 , day : 12 , year : 2024 , wday : 3}
luaDate.split(1731360001) // 拆分时间戳
luaDate.split("2024/11/12 5:20:1") //拆分日期字符串

 

原型:luaDate.format(d, formatStr)

@ 说明:格式化日期
@ 参数:

d [string 必需] 日期格式字符串或日期表或时间戳
formatStr [string 必需] 格式规则,比如:yyyy-mm-dd HH:MM:SS

@ 返回:[string | nil] 

luaDate.format("2024/11/12 5:20:1", "yyyy年mm月dd日 hh时MM分ss秒") //格式化日期字符串,结果:2024年11月12日 5时20分1秒
luaDate.format(1731360001, "yyyy年mm月dd日 hh时MM分ss秒")//格式化时间戳,结果:2024年11月9日 14时52分11秒
luaDate.format({"year": 2024, "month": 11, "day": 12, "hour": 5, "min": 20, "sec": 1}, "yyyy年mm月dd日 hh时MM分ss秒")  //格式化日期表,结果:2024年11月12日 5时20分1秒

 

原型:luaDate.comput(d, tbl)

@ 说明:日期计算
@ 参数:

  d [string 必需] 日期格式字符串或日期表或时间戳
  tbl [table],计算方式。比如,在当前日期上加年: {year=1} ,提前一年:{year=-1}。可设置: year/month/day/hour/min/sec

@ 返回:[table] 日期表,格式:{yday : 313 , isdst : false , month : 11 , min : 58 , wday : 6 , sec : 27 , hour : 14 , day : 8 , year : 2024}

luaDate.comput(1731360001, {"day": -1}) //昨天
luaDate.comput(1731360001, {"day": 1})  //明天

 

原型:luaDate.diff(d1, d2)

@ 说明:返回两个日期相差秒数
@ 参数:

  d1 [string 必需] 日期
  d2 [string 必需] 日期

@ 返回:[number | nil] 

luaDate.diff("2024-11-11 15:15:15", "2024-11-11 15:15:25") // 结果:-10

 

标签:11,2024,插件,12,20,luaDate,----,lua,日期
From: https://www.cnblogs.com/wm218/p/18536739

相关文章

  • 化粪池(septic tank)的起源可以追溯到19世纪末20世纪初。当时,随着城市化进程的推进,越来
    化粪池(septictank)的起源可以追溯到19世纪末20世纪初。当时,随着城市化进程的推进,越来越多的城市和乡村开始面临卫生设施和污水处理的问题。为了有效处理家庭和社区的排泄物和污水,出现了化粪池这种简单而有效的排污设施。化粪池的设计原理是通过自然的沉淀和分解作用,分离并处理生......
  • [ARC158C] All Pair Digit Sums 题解
    C-AllPairDigitSums题意:设\(f(x)\)为\(x\)的数字和。例如\(f(158)=1+5+8=14\)。给定一个长度为\(N\)的正整数序列\(A\),求\(\sum_{i=1}^{N}\sum_{j=1}^{N}f(A_i+A_j)\)。分析:首先明确\(f(x)\)为\(x\)的数位和。举例情况:若有两个数分别为:\(12,21\)。\[f(......
  • 2024.11.5人工智能学记6
    人工智能(ArtificialIntelligence),引文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。(一)学科范畴人工智能是一门边沿学科,属于自然科学、社会科学、技术科学三向交叉学科。(二)涉及学科与领域哲学和认知科学,数学,神经生......
  • sudoku 数独 XY-Chains
    XY-ChainsTheY-WingChainsareinfactpartofamoreencompassingstrategycalledXY-Chains.Thecommonalityisthesamepincer-likeattackoncandidatesthatbothendscanseeandthatthechainismadeofbi-valuecells.WithY-Chainsthehingewasexp......
  • SS241109B. tii(tii)
    SS241109B.tii(tii)题意给你一个\(01\)序列,长度为\(n\le5\times10^5\)。给你一个小数\(p\),要你找出一个区间满足区间\(1\)的个数比区间长度和\(p\)最接近,输出区间的左端点,如果有多个区间输出左端点最小的那个。思路设\(s\)是原序列的前缀和数组,翻译一下题面就是求......
  • Nuxt.js 应用中的 listen 事件钩子详解
    title:Nuxt.js应用中的listen事件钩子详解date:2024/11/9updated:2024/11/9author:cmdragonexcerpt:它为开发者提供了一个自由的空间可以在开发服务器启动时插入自定义逻辑。通过合理利用这个钩子,开发者能够提升代码的可维护性和调试能力。注意处理性能、错误和环......
  • Springboot事务失效原因
    Springboot事务失效原因@Transactional注解只能作用于public方法上,如果不是的话编译报错@Transactional注解默认当发生RunTimeException才会回滚,如果发生其他异常不会,解决方法@Transactional(rollbackFor=Exception.class)自调用问题,假设一个service有一个事务方法a......
  • 空夜 [换根DP]
    空夜Description给定\(n\)个节点的树,每个点有点权\(a_i\),对于每个\(i\),求出\(\sum_{j}\lfloor\frac{a_i}{2^{dis(i,j)}}\rfloor\)。\(dis(i,j)\)表示\(i\)到\(j\)的树上最短路径。Solution对于每个\(i\)都要求答案,等价于求以\(i\)为根的树的答案,可以想到......
  • An indoor service area determination approach for pedestrian navigation path pla
    目的:人们在导航时往往需要设定具体的起点和终点,但有时他们可能只想找到某个类型的地方,比如最近的商店或厕所。需求?最短距离、最快速路径、最简单或最少转弯的路径、最少或最多空间访问、最少障碍物的路径、一般安全路径、避开动态障碍物的安全路径、健康最优路径(例如特定程度的卡......
  • LIN总线
    LIN总线参考链接:https://www.renesas.cn/zh/document/apn/904591?language=zhLIN是LocalInterconnectNetwork的缩写,是基于UART/SCI(UniversalAsynchronousReceiver-Transmitter/SerialCommunicationInterface,通用异步收发器/串行通信接口)的低成本串行通信协议。可......