UNPKG

@fast-china/utils

Version:

Fast 工具库.

1 lines 13.4 kB
{"version":3,"file":"index.mjs","sources":["../../../../src/date/index.ts"],"sourcesContent":["/**\n * Date工具类\n */\nexport const dateUtil = {\n\t/**\n\t * 根据当前时间生成问候语\n\t */\n\tgetGreet(): string {\n\t\tconst now = new Date();\n\t\tconst hour = now.getHours();\n\t\tlet greet = \"\";\n\n\t\tif (hour < 5) {\n\t\t\tgreet = \"夜深了,注意身体哦!\";\n\t\t} else if (hour < 9) {\n\t\t\tgreet = \"早上好!\" + \"欢迎回来!\";\n\t\t} else if (hour < 12) {\n\t\t\tgreet = \"上午好!\" + \"欢迎回来!\";\n\t\t} else if (hour < 14) {\n\t\t\tgreet = \"中午好!\" + \"欢迎回来!\";\n\t\t} else if (hour < 18) {\n\t\t\tgreet = \"下午好!\" + \"欢迎回来!\";\n\t\t} else if (hour < 24) {\n\t\t\tgreet = \"晚上好!\" + \"欢迎回来!\";\n\t\t} else {\n\t\t\tgreet = \"您好!\" + \"欢迎回来!\";\n\t\t}\n\t\treturn greet;\n\t},\n\t/**\n\t * 时间处理翻译\n\t */\n\tdateTimeFix(date: string | Date | null | undefined): string {\n\t\tif (date !== null && date !== undefined && date) {\n\t\t\tif (typeof date === \"string\") {\n\t\t\t\tdate = new Date(date);\n\t\t\t}\n\n\t\t\t// 获取时间戳\n\t\t\tlet timestamp = date.getTime();\n\t\t\tif (timestamp.toString().length < 13) {\n\t\t\t\tconst arrTimestamp = timestamp.toString().split(\"\");\n\t\t\t\tfor (let start = 0; start < 13; start++) {\n\t\t\t\t\tif (!arrTimestamp[start]) {\n\t\t\t\t\t\tarrTimestamp[start] = \"0\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttimestamp = parseInt(arrTimestamp.join(\"\"));\n\t\t\t}\n\t\t\tconst minute = 1000 * 60;\n\t\t\tconst hour = minute * 60;\n\t\t\tconst day = hour * 24;\n\t\t\tconst month = day * 30;\n\t\t\t// 获取当前时间\n\t\t\tconst curTime = new Date().getTime();\n\t\t\t// 比较\n\t\t\tconst diffValue = curTime - timestamp;\n\n\t\t\t// 计算差异时间的量级\n\t\t\tconst monthC = diffValue / month;\n\t\t\tconst weekC = diffValue / (7 * day);\n\t\t\tconst dayC = diffValue / day;\n\t\t\tconst hourC = diffValue / hour;\n\t\t\tconst minC = diffValue / minute;\n\n\t\t\t// 如果本地时间反而小于变量时间\n\t\t\tif (diffValue < 0) {\n\t\t\t\tconst monthC1 = Math.abs(monthC);\n\t\t\t\tconst weekC1 = Math.abs(weekC);\n\t\t\t\tconst dayC1 = Math.abs(dayC);\n\t\t\t\tconst hourC1 = Math.abs(hourC);\n\t\t\t\tconst minC1 = Math.abs(minC);\n\n\t\t\t\tif (monthC1 > 12) {\n\t\t\t\t\t// 超过1年,直接显示 几 年前\n\t\t\t\t\treturn `${parseInt(`${monthC1 / 12}`)}年后`;\n\t\t\t\t} else if (monthC1 >= 6) {\n\t\t\t\t\treturn \"半年后\";\n\t\t\t\t} else if (monthC1 >= 1) {\n\t\t\t\t\treturn `${parseInt(`${monthC1}`)}月后`;\n\t\t\t\t} else if (weekC1 > 2) {\n\t\t\t\t\treturn \"半月后\";\n\t\t\t\t} else if (weekC1 >= 1) {\n\t\t\t\t\treturn `${parseInt(`${weekC1}`)}周后`;\n\t\t\t\t} else if (dayC1 >= 1) {\n\t\t\t\t\treturn `${parseInt(`${dayC1}`)}天后`;\n\t\t\t\t} else if (hourC1 >= 1) {\n\t\t\t\t\treturn `${parseInt(`${hourC1}`)}小时后`;\n\t\t\t\t} else if (minC1 >= 1) {\n\t\t\t\t\treturn `${parseInt(`${minC1}`)}分钟后`;\n\t\t\t\t}\n\t\t\t\treturn \"刚刚\";\n\t\t\t\t// return \"不久前\";\n\t\t\t}\n\n\t\t\t// 使用\n\t\t\tif (monthC > 12) {\n\t\t\t\t// 超过1年,直接显示 几 年前\n\t\t\t\treturn `${parseInt(`${monthC / 12}`)}年前`;\n\t\t\t} else if (monthC >= 6) {\n\t\t\t\treturn \"半年前\";\n\t\t\t} else if (monthC >= 1) {\n\t\t\t\treturn `${parseInt(`${monthC}`)}月前`;\n\t\t\t} else if (weekC > 2) {\n\t\t\t\treturn \"半月前\";\n\t\t\t} else if (weekC >= 1) {\n\t\t\t\treturn `${parseInt(`${weekC}`)}周前`;\n\t\t\t} else if (dayC >= 1) {\n\t\t\t\treturn `${parseInt(`${dayC}`)}天前`;\n\t\t\t} else if (hourC >= 1) {\n\t\t\t\treturn `${parseInt(`${hourC}`)}小时前`;\n\t\t\t} else if (minC >= 1) {\n\t\t\t\treturn `${parseInt(`${minC}`)}分钟前`;\n\t\t\t}\n\t\t\treturn \"刚刚\";\n\t\t} else {\n\t\t\treturn \"\";\n\t\t}\n\t},\n\t/**\n\t * 获取默认时间\n\t * @returns [00:00:00, 23:59:59]\n\t */\n\tgetDefaultTime(): Date[] {\n\t\tconst end = new Date();\n\t\tconst start = new Date();\n\t\tstart.setMonth(start.getMonth() - 1);\n\t\tstart.setHours(0, 0, 0);\n\t\tend.setHours(23, 59, 59);\n\t\treturn [start, end];\n\t},\n\t/**\n\t * 获取简单的日期时间\n\t * @returns xxxx-xx-xx 00:00:00\n\t */\n\tgetSimpleTime(): Date {\n\t\tconst start = new Date();\n\t\tstart.setHours(0, 0, 0);\n\t\treturn start;\n\t},\n\t/**\n\t * 获取简单的日期时间范围\n\t */\n\tgetSimpleShortcuts(): {\n\t\ttext: string;\n\t\tvalue: () => Date;\n\t}[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttext: \"今天\",\n\t\t\t\tvalue: (): Date => {\n\t\t\t\t\tconst date = new Date();\n\t\t\t\t\tdate.setHours(0, 0, 0);\n\t\t\t\t\treturn date;\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"昨天\",\n\t\t\t\tvalue: (): Date => {\n\t\t\t\t\tconst date = new Date();\n\t\t\t\t\tdate.setDate(date.getDate() - 1);\n\t\t\t\t\tdate.setHours(0, 0, 0);\n\t\t\t\t\treturn date;\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"一周前\",\n\t\t\t\tvalue: (): Date => {\n\t\t\t\t\tconst date = new Date();\n\t\t\t\t\tdate.setDate(date.getDate() - 7);\n\t\t\t\t\tdate.setHours(0, 0, 0);\n\t\t\t\t\treturn date;\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"一月前\",\n\t\t\t\tvalue: (): Date => {\n\t\t\t\t\tconst date = new Date();\n\t\t\t\t\tdate.setMonth(date.getMonth() - 1);\n\t\t\t\t\tdate.setHours(0, 0, 0);\n\t\t\t\t\treturn date;\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"一年前\",\n\t\t\t\tvalue: (): Date => {\n\t\t\t\t\tconst date = new Date();\n\t\t\t\t\tdate.setFullYear(date.getFullYear() - 1);\n\t\t\t\t\tdate.setHours(0, 0, 0);\n\t\t\t\t\treturn date;\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t},\n\t/**\n\t * 获取日期范围\n\t */\n\tgetShortcuts(): {\n\t\ttext: string;\n\t\tvalue: () => Date[];\n\t}[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttext: \"近1天\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setDate(start.getDate() - 1);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近3天\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setDate(start.getDate() - 3);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近1周\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setDate(start.getDate() - 7);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近1月\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setMonth(start.getMonth() - 1);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近3月\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setMonth(start.getMonth() - 3);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近6月\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setMonth(start.getMonth() - 6);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"近1年\",\n\t\t\t\tvalue: (): Date[] => {\n\t\t\t\t\tconst end = new Date();\n\t\t\t\t\tconst start = new Date();\n\t\t\t\t\tstart.setFullYear(start.getFullYear() - 1);\n\t\t\t\t\tstart.setHours(0, 0, 0);\n\t\t\t\t\tend.setHours(23, 59, 59);\n\t\t\t\t\treturn [start, end];\n\t\t\t\t},\n\t\t\t},\n\t\t];\n\t},\n\t/**\n\t * 判断传入的时间是否大于当前时间\n\t */\n\tgetDisabledDate(time: Date): boolean {\n\t\treturn time.getTime() > Date.now();\n\t},\n};\n"],"names":[],"mappings":"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"}