当前图书馆的目的是提供有关系统时间以 UTC 格式的信息。它已被重度沙箱从标准 Lua 图书馆 os 库,不允许您执行任何系统改造操作。
概要
职能
clock
返回从子微秒精度的任意基准时间以秒计时。这个函数对于比较两个事件发生在同一电脑上的时间有用,是最佳选择进行测试。
与 os.time() 或 DateTime.now() 等函数不同,调整系统时钟 (例如通过用户或 NTP) 不会导致时间向前或向后跳转。
-- 记录初始时间:local startTime = os.clock()-- 做您想要测试性能的事情:local a, b = 0, 1for _ = 1, 5000000 doa, b = b, aend-- 测量这需要花的时间:local deltaTime = os.clock() - startTimeprint("Elapsed time: " .. deltaTime)--> Elapsed time: 0.044425600033719 (actual number may vary)
返回
date
使用指定的时间/时间信息对给定的 formatString 格式,或不提供时,返回 os.time() 的值。
在新工作中避免此函数。 相反,请使用 DateTime API,这是本地化格式的支持。
以下特殊符号(基于 C 函数 strrtime)已支持:
<tbody><tr><td>%a</td><td>缩写的周一到周五名称\*</td><td>月</td></tr><tr><td>%A</td><td>全周一至周五名称\*</td><td>星期一</td></tr><tr><td>%b</td><td>缩写月名\*</td><td>2月</td></tr><tr><td>%B</td><td>全月名称\*</td><td>二月</td></tr><tr><td>%c</td><td>日期和时间\*</td><td>周一 2月12日 14:14:35 2024</td></tr><tr><td>%d</td><td>月的第几天</td><td>12</td></tr><tr><td>%H</td><td>使用 24 小时的时钟</td><td>14</td></tr><tr><td>%I</td><td>使用 12 小时的时钟</td><td>02</td></tr><tr><td>%j</td><td>年的第几天</td><td>043</td></tr><tr><td>%m</td><td>月</td><td>02</td></tr><tr><td>%M</td><td>分钟</td><td>14</td></tr><tr><td>%p</td><td>“上午”或“下午”</td><td>下午</td></tr><tr><td>%S</td><td>秒</td><td>35</td></tr><tr><td>%U</td><td>第一周(第一个星期日为第一个星期一)</td><td>06</td></tr><tr><td>%w</td><td>周一到周五</td><td>1</td></tr><tr><td>%W</td><td>周号(第一个星期一为第一天)</td><td>07</td></tr><tr><td>%x</td><td>日期\*</td><td>02/12/24</td></tr><tr><td>%X</td><td>时间\*</td><td>14:14:35</td></tr><tr><td>%</td><td>两位数年</td><td>24</td></tr><tr><td>%</td><td>全年</td><td>2024</td></tr><tr><td>%z</td><td>ISO 8601 从 UTC 在时区(1 分钟 = 1,1 小时 = 100)</td><td>0800</td></tr><tr><td>%Z</td><td>时区名称或缩写 \*</td><td>PST</td></tr><tr><td>%</td><td>% 字符</td><td>%</td></tr></tbody>
指定器 | 意义 | 示例 ^ |
---|
* 此值可以根据当前地区变化。
※ 提供的示例为 2024年2月12日(周一) 2:14:35(太平洋标准时间),请使用本地时间“en-us”在太平洋标准时间(PST)运行。
如果提供的 formatString 正确地是 "*t" (当地时间) 或 "!*t" (UTC 时间),这个函数将返回一个包含以下组件的字典,其通常可以在上面的特殊符号中找到。
<tbody><tr><td>年</td><td>int</td><td>描述当前时代的当前年度(例子 2017)</td></tr><tr><td>月</td><td>int</td><td>一个数字,数值在 1 和 12 之间(从 1 月开始),描述当前月。</td></tr><tr><td>wday</td><td>int</td><td>一个数字,数值在 1 和 7 之间(从周日开始),描述当前的周一到周六。</td></tr><tr><td>yday</td><td>int</td><td>一个数字,数量 1 到 366 描述我们到达一年的时间。如果是跳年,可能有 366 天。</td></tr><tr><td>天</td><td>int</td><td>一个数量在 1 和 31 之间,描述当前月的当天。</td></tr><tr><td>小时</td><td>int</td><td>一个数字,数值在 1 和 24 之间。描述当前时间的当前时间。</td></tr><tr><td>分</td><td>int</td><td>一个数量在 0 和 59 之间,描述当前时间的小时。</td></tr><tr><td>秒</td><td>int</td><td>一个数量在 0 和 60 之间,描述当前时间的秒。(60 因为函数是描述跳跃秒, 但在实践中可能不会).</td></tr><tr><td>isd</td><td>boolean</td><td>一个描述当前是否启用日光节省时间的Boolean。</td></tr></tbody>
园 | 类型 | 描述 |
---|
time
返回在 Unix 时代(1970年1月1日,00:00:00)之后,按当前 UTC 时间计算的秒数。如果提供表按照该返回的表格式同样返回,它将返回从那时起的秒数。
注意,返回时间使用设备的本地时钟。大多数操作系统都会自动同步其本地时间与在线时间服务器,因此在几百毫秒内内容。但是,用户可以轻松禁用同步行为并将系统时间设置为任何他想要的时间; 对于客户端和服务器之间的同步时间,请使用 Workspace:GetServerTimeNow() 。
在新工作中避免此函数。 相反,请使用 DateTime API,这是本地化格式的支持。
当您需要精确测量时间中两点之间的时间,例如测试性能时,请使用 os.clock() 。