返回 AiToEarn
1 /*
2 * @Author: nevin
3 * @Date: 2024-07-04 15:15:28
4 * @LastEditTime: 2024-11-26 18:39:44
5 * @LastEditors: nevin
6 * @Description: 工具
7 */
8
9 export * from './file.util'
10 export * from './ip.util'
11 export * from './time.util'
12
13 /**
14 * 封装一个非阻塞的sleep函数,返回一个Promise对象。
15 * @param {number} milliseconds - 指定延迟的毫秒数。
16 * @returns {Promise<void>} - 一个Promise,将在指定延迟后resolve。
17 */
18 export function sleep(milliseconds: number): Promise<void> {
19 return new Promise((resolve) => {
20 setTimeout(resolve, milliseconds)
21 })
22 }
23
24 // 封装一个获取随机的任意个数字或字母的字符串的函数
25 export function getRandomString(length: number, onlyNum = false): string {
26 const chars = onlyNum
27 ? '1234567890'
28 : 'abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789'
29 let result = ''
30 for (let i = 0; i < length; i++) {
31 result += chars.charAt(Math.floor(Math.random() * chars.length))
32 }
33 return result
34 }
35
36 /**
37 * 获取某一天 UTC 的起止时间
38 * @param date 格式为 "2025-07-25"
39 * @returns { start: Date, end: Date }
40 */
41 export function getDayRangeUTC(date: string): { start: Date, end: Date } {
42 const start = new Date(`${date} T00:00:00.000Z`)
43 const end = new Date(`${date} T23:59:59.999Z`)
44 return { start, end }
45 }
46
46 lines TYPESCRIPT