1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
| type TargetContext = '_self' | '_parent' | '_blank' | '_top';
|
| export const openWindow = (
| url: string,
| opts?: { target?: TargetContext; [key: string]: any }
| ) => {
| const { target = '_blank', ...others } = opts || {};
| window.open(
| url,
| target,
| Object.entries(others)
| .reduce((preValue: string[], curValue) => {
| const [key, value] = curValue;
| return [...preValue, `${key}=${value}`];
| }, [])
| .join(',')
| );
| };
|
| export const regexUrl = new RegExp(
| '^(?!mailto:)(?:(?:http|https|ftp)://)(?:\\S+(?::\\S*)?@)?(?:(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[0-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))|localhost)(?::\\d{2,5})?(?:(/|\\?|#)[^\\s]*)?$',
| 'i'
| );
|
|
| /**
| * @description 格式化时间
| * @param time
| * @param cFormat
| * @returns {string|null}
| */
| export function parseTime(time, cFormat) {
| if (arguments.length === 0) {
| return null
| }
| const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
| let date
| if (typeof time === 'object') {
| date = time
| } else {
| if (typeof time === 'string' && /^[0-9]+$/.test(time)) {
| time = parseInt(time)
| }
| if (typeof time === 'number' && time.toString().length === 10) {
| time = time * 1000
| }
| date = new Date(time)
| }
| const formatObj = {
| y: date.getFullYear(),
| m: date.getMonth() + 1,
| d: date.getDate(),
| h: date.getHours(),
| i: date.getMinutes(),
| s: date.getSeconds(),
| a: date.getDay(),
| }
| return format.replace(/{([ymdhisa])+}/g, (result, key) => {
| let value = formatObj[key]
| if (key === 'a') {
| return ['日', '一', '二', '三', '四', '五', '六'][value]
| }
| if (result.length > 0 && value < 10) {
| value = '0' + value
| }
| return value || 0
| })
| }
|
|
| export const documentHeight:number = window.innerHeight - 320;
| export default null;
|
|