gzjs-utils 1.0.25 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs +1 -0
- package/lib/index.iife.js +1 -0
- package/lib/index.mjs +1 -0
- package/lib/index.umd.js +1 -0
- package/package.json +38 -7
- package/types/index.d.ts +12 -2
- package/types/utils/AES.d.ts +53 -64
- package/types/utils/Base64.d.ts +25 -25
- package/types/utils/Bytes.d.ts +40 -40
- package/types/utils/Console.d.ts +45 -0
- package/types/utils/DateUtils.d.ts +14 -18
- package/types/utils/EnumBuilder.d.ts +1 -1
- package/types/utils/Env.d.ts +2 -1
- package/types/utils/ExpUtils.d.ts +74 -0
- package/types/utils/Hmac.d.ts +70 -23
- package/types/utils/MD5.d.ts +57 -7
- package/types/utils/Promise.d.ts +16 -9
- package/types/utils/Regexps.d.ts +164 -0
- package/types/utils/Requests.d.ts +42 -0
- package/types/utils/SHA.d.ts +80 -18
- package/types/utils/TreeUtils.d.ts +1 -1
- package/types/utils/Utils.d.ts +334 -166
- package/types/utils/index.d.ts +42 -18
- package/LICENSE +0 -21
- package/lib/index.js +0 -1
package/types/utils/Utils.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ declare type TrimMode = 0 | 1 | 2;
|
|
|
20
20
|
export type URLParam = string | number | boolean | any;
|
|
21
21
|
export type QueryParams = {
|
|
22
22
|
[key: string]: string | boolean | any | "";
|
|
23
|
-
}
|
|
23
|
+
} & Record<any, any>;
|
|
24
24
|
export type URI = {
|
|
25
25
|
"source": string | "";
|
|
26
26
|
"protocol": string | "";
|
|
@@ -40,270 +40,438 @@ export type URI = {
|
|
|
40
40
|
"hash": string | "";
|
|
41
41
|
"params": QueryParams;
|
|
42
42
|
toURLString: () => string;
|
|
43
|
+
hashInfo: {
|
|
44
|
+
params: QueryParams;
|
|
45
|
+
toString: () => string;
|
|
46
|
+
};
|
|
43
47
|
};
|
|
44
48
|
export type RandomTypeOrSource = 1 | 2 | 3 | (number | string)[] | string;
|
|
45
|
-
export declare
|
|
49
|
+
export declare const TRUE_FLAG: readonly (string | number | boolean)[];
|
|
50
|
+
export declare const FALSE_FLAG: readonly (string | number | boolean)[];
|
|
51
|
+
export declare const type: (obj: any) => any;
|
|
52
|
+
export declare const isFunction: (obj: any) => boolean;
|
|
53
|
+
export declare const isBase64: (str: any) => boolean;
|
|
54
|
+
export declare const trim: (s: any) => any;
|
|
55
|
+
export declare const parseUri: (str: any, strictMode?: boolean) => URI;
|
|
56
|
+
export declare const parseQuery: (query: string) => QueryParams;
|
|
57
|
+
export declare const getQueryParams: (search?: string, allowFromLocation?: boolean) => QueryParams;
|
|
58
|
+
/**
|
|
59
|
+
* 随机生成UUID
|
|
60
|
+
* @param len 长度
|
|
61
|
+
*/
|
|
62
|
+
export declare function uuid(len: number): string;
|
|
63
|
+
export declare function isArrayLike(obj: any): boolean;
|
|
64
|
+
export declare function isArray(obj: any): boolean;
|
|
65
|
+
export declare function shuffle<T>(arr: any): any;
|
|
66
|
+
/**
|
|
67
|
+
* 获取随机数, 默认 字母+数组
|
|
68
|
+
* @param len 随机数长度
|
|
69
|
+
* @param typeOrSource 随机数类型:1=字母+数字, 2=数字 , 3=字母,或者自定义数据源
|
|
70
|
+
*/
|
|
71
|
+
export declare function random(len?: number, typeOrSource?: RandomTypeOrSource): string;
|
|
72
|
+
declare const _Utils_: {
|
|
46
73
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* <pre>
|
|
51
|
-
* // type('123') 则返回 String
|
|
52
|
-
* // type(133) 则返回 Number
|
|
53
|
-
* // type([]) 则返回 Array
|
|
54
|
-
* // type() 则返回 Undefined
|
|
55
|
-
* // type(null) 则返回 null
|
|
56
|
-
* </pre>
|
|
57
|
-
*
|
|
58
|
-
* @param obj
|
|
74
|
+
* 获取字符串中包含的中文个数
|
|
75
|
+
* @param obj 字符串
|
|
76
|
+
* @returns 中文字符的数量
|
|
59
77
|
*/
|
|
60
|
-
|
|
78
|
+
chineseLen(obj: any_str): number;
|
|
61
79
|
/**
|
|
62
|
-
*
|
|
63
|
-
* @param
|
|
80
|
+
* 从身份证获取年龄(年、月、日)
|
|
81
|
+
* @param str 身份证号码
|
|
82
|
+
* @returns 返回 [年份, 月数, 天数] 数组,如果身份证无效则返回空数组
|
|
64
83
|
*/
|
|
65
|
-
|
|
84
|
+
getAgeFromIDcard(str: string): [year, moth, day] | [];
|
|
66
85
|
/**
|
|
67
|
-
*
|
|
68
|
-
* @param
|
|
86
|
+
* 获取查询参数
|
|
87
|
+
* @param search 查询参数字符串,如果为空则从 URL 读取
|
|
88
|
+
* @param allowFromLocation 是否允许从 location 上获取,默认为 true
|
|
89
|
+
* @returns 查询参数对象
|
|
69
90
|
*/
|
|
70
|
-
|
|
91
|
+
getQueryParams: (search?: string, allowFromLocation?: boolean) => QueryParams;
|
|
71
92
|
/**
|
|
72
|
-
*
|
|
73
|
-
* @param
|
|
93
|
+
* 获取 URL 路径中的指定参数
|
|
94
|
+
* @param url URL 字符串
|
|
95
|
+
* @param key 参数名
|
|
96
|
+
* @returns 参数值
|
|
74
97
|
*/
|
|
75
|
-
|
|
98
|
+
getUrlParam(url: string, key: string): URLParam;
|
|
76
99
|
/**
|
|
77
|
-
*
|
|
78
|
-
* @param
|
|
79
|
-
* @
|
|
100
|
+
* 获取 URL 路径中的所有参数
|
|
101
|
+
* @param url URL 字符串
|
|
102
|
+
* @returns 查询参数对象
|
|
80
103
|
*/
|
|
81
|
-
|
|
104
|
+
getUrlParams(url: string): QueryParams;
|
|
82
105
|
/**
|
|
83
|
-
*
|
|
84
|
-
* @param
|
|
85
|
-
*
|
|
106
|
+
* 从 HTTP 响应中获取文件名
|
|
107
|
+
* @param source 数据源,支持以下格式:
|
|
108
|
+
* - string: Content-Disposition 响应头内容
|
|
109
|
+
* - Headers: Fetch API 的 Headers 对象
|
|
110
|
+
* - Response: Fetch API 的 Response 对象
|
|
111
|
+
* - XMLHttpRequest: XHR 对象
|
|
112
|
+
* @param headerName 可选,指定响应头名称,默认为 'Content-Disposition'
|
|
113
|
+
* @returns 文件名,如果解析失败则返回 null
|
|
86
114
|
*/
|
|
87
|
-
|
|
115
|
+
getFileNameFromResponse(source: string | Headers | Response | XMLHttpRequest | any, headerName?: string): string;
|
|
88
116
|
/**
|
|
89
|
-
*
|
|
90
|
-
* @
|
|
91
|
-
* @param suffix 右边内容
|
|
117
|
+
* 判断是否是安卓设备
|
|
118
|
+
* @returns 如果是安卓设备返回 true,否则返回 false
|
|
92
119
|
*/
|
|
93
|
-
|
|
120
|
+
isAndroid(): boolean;
|
|
94
121
|
/**
|
|
95
|
-
*
|
|
96
|
-
* @param
|
|
122
|
+
* 是否为数组类型
|
|
123
|
+
* @param obj 待检测的对象
|
|
124
|
+
* @returns 如果是数组类型返回 true,否则返回 false
|
|
97
125
|
*/
|
|
98
|
-
|
|
126
|
+
isArray: typeof isArray;
|
|
99
127
|
/**
|
|
100
|
-
*
|
|
128
|
+
* 判断是否为空,支持对象、字符串、Map、Set、Array 等
|
|
129
|
+
* @param obj 待检测的对象
|
|
130
|
+
* @returns 如果为空返回 true,否则返回 false
|
|
101
131
|
*/
|
|
102
|
-
|
|
132
|
+
isEmpty(obj: any): boolean;
|
|
103
133
|
/**
|
|
104
|
-
*
|
|
134
|
+
* 判断是否为空白字符串
|
|
135
|
+
* @param str 待检测的字符串
|
|
136
|
+
* @returns 如果为空白字符串(null、undefined、空字符串或纯空白字符)返回 true
|
|
105
137
|
*/
|
|
106
|
-
|
|
138
|
+
isBlank(str: any): boolean;
|
|
107
139
|
/**
|
|
108
|
-
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
* page([1,2,3,4,5,6,7,8,9,10], 3) // 返回 [[1,2,3],[4,5,6],[7,8,9],[10]]
|
|
112
|
-
* page([1,2,3,4,5,6,7,8,9,10], 3, 3) // 返回 [[7,8,9]]
|
|
113
|
-
* </pre>
|
|
114
|
-
* @param arr 数据列表
|
|
115
|
-
* @param pageSize 分页大小
|
|
116
|
-
* @param pageNo 获取第几页的数据,从1开始,默认返回全部数据,如果指定 分页页码返回指定页码 的数据,
|
|
140
|
+
* 是否为 Base64 编码字符串
|
|
141
|
+
* @param str 待检测的字符串
|
|
142
|
+
* @returns 如果是 Base64 编码返回 true,否则返回 false
|
|
117
143
|
*/
|
|
118
|
-
|
|
144
|
+
isBase64: (str: any) => boolean;
|
|
119
145
|
/**
|
|
120
|
-
*
|
|
121
|
-
* @param
|
|
122
|
-
* @
|
|
146
|
+
* 是否为 Base64 图片格式
|
|
147
|
+
* @param str 待检测的字符串,格式如:data:image/png;base64,iVBORw0KGgo******
|
|
148
|
+
* @returns 如果是 Base64 图片格式返回 true,否则返回 false
|
|
123
149
|
*/
|
|
124
|
-
|
|
150
|
+
isBase64Img(str: any): boolean;
|
|
125
151
|
/**
|
|
126
|
-
*
|
|
127
|
-
* @param
|
|
152
|
+
* 判断字符串是否全部是中文
|
|
153
|
+
* @param chs 待检测的字符串
|
|
154
|
+
* @returns 如果全部是中文字符返回 true,否则返回 false
|
|
128
155
|
*/
|
|
129
|
-
|
|
156
|
+
isChinese(chs: any_str): boolean;
|
|
130
157
|
/**
|
|
131
|
-
*
|
|
132
|
-
* @param
|
|
158
|
+
* 判断对象是否为函数类型
|
|
159
|
+
* @param obj 待检测的对象
|
|
160
|
+
* @returns 如果是函数类型返回 true,否则返回 false
|
|
133
161
|
*/
|
|
162
|
+
isFunction: (obj: any) => boolean;
|
|
134
163
|
/**
|
|
135
|
-
*
|
|
136
|
-
* @param
|
|
137
|
-
* @
|
|
164
|
+
* 判断是否为 URL(必须包含协议部分)
|
|
165
|
+
* @param str 待检测的字符串
|
|
166
|
+
* @returns 如果是有效 URL(如 http://baidu.com)返回 true,否则返回 false
|
|
138
167
|
*/
|
|
139
|
-
|
|
168
|
+
isUrl(str: any_str): boolean;
|
|
140
169
|
/**
|
|
141
|
-
*
|
|
142
|
-
* @param
|
|
143
|
-
* @
|
|
170
|
+
* 判断是否为 HTTP 协议
|
|
171
|
+
* @param str URL 字符串
|
|
172
|
+
* @returns 如果是 HTTP 协议返回 true,否则返回 false
|
|
144
173
|
*/
|
|
145
|
-
|
|
174
|
+
isHttp(str: any): boolean;
|
|
146
175
|
/**
|
|
147
|
-
*
|
|
148
|
-
* @param
|
|
149
|
-
* @
|
|
176
|
+
* 判断是否为 HTTPS 协议
|
|
177
|
+
* @param str URL 字符串
|
|
178
|
+
* @returns 如果是 HTTPS 协议返回 true,否则返回 false
|
|
179
|
+
*/
|
|
180
|
+
isHttps(str: any): boolean;
|
|
181
|
+
/**
|
|
182
|
+
* 判断是否为有效的身份证号码
|
|
183
|
+
* @param str 身份证号码
|
|
184
|
+
* @returns 如果是有效的身份证号码返回 true,否则返回 false
|
|
185
|
+
*/
|
|
186
|
+
isIDCard(str: string): boolean;
|
|
187
|
+
/**
|
|
188
|
+
* 是否为 IPv6 地址
|
|
189
|
+
* @param s 待检测的字符串
|
|
190
|
+
* @returns 如果是 IPv6 地址返回 true,否则返回 false
|
|
191
|
+
*/
|
|
192
|
+
isIPv6(s: any): boolean;
|
|
193
|
+
/**
|
|
194
|
+
* 是否为 IPv4 地址
|
|
195
|
+
* @param s 待检测的字符串
|
|
196
|
+
* @returns 如果是 IPv4 地址返回 true,否则返回 false
|
|
197
|
+
*/
|
|
198
|
+
isIPv4(s: any): boolean;
|
|
199
|
+
/**
|
|
200
|
+
* 是否为 IP 地址(IPv4 或 IPv6)
|
|
201
|
+
* @param str 待检测的字符串
|
|
202
|
+
* @returns 如果是 IP 地址返回 true,否则返回 false
|
|
203
|
+
*/
|
|
204
|
+
isIP(str: any): any;
|
|
205
|
+
/**
|
|
206
|
+
* 是否为闰年
|
|
207
|
+
* @param str 年份,yyyy 格式
|
|
208
|
+
* @returns 如果是闰年返回 true,否则返回 false
|
|
209
|
+
*/
|
|
210
|
+
isLeapYear(str: number | string): boolean;
|
|
211
|
+
/**
|
|
212
|
+
* 是否为手机号码
|
|
213
|
+
* @param str 待检测的字符串
|
|
214
|
+
* @param country 国家编号,默认为 'cn'(中国),可选 'us'(美国)等
|
|
215
|
+
* @returns 如果是手机号码返回 true,否则返回 false
|
|
216
|
+
*/
|
|
217
|
+
isMobile(str: any_str, country?: string | "cn"): boolean;
|
|
218
|
+
/**
|
|
219
|
+
* 是否为邮箱地址
|
|
220
|
+
* @param email 待检测的邮箱字符串
|
|
221
|
+
* @returns 如果是邮箱地址返回 true,否则返回 false
|
|
222
|
+
*/
|
|
223
|
+
isEmail(email: string): boolean;
|
|
224
|
+
/**
|
|
225
|
+
* 校验是否包含非法字符(脚本内容)
|
|
226
|
+
* @param text 待检测的文本
|
|
227
|
+
* @returns 如果包含非法字符返回 true,否则返回 false
|
|
228
|
+
*/
|
|
229
|
+
isScript(text: string): boolean;
|
|
230
|
+
/**
|
|
231
|
+
* 是否为 String 类型
|
|
232
|
+
* @param obj 待检测的对象
|
|
233
|
+
* @returns 如果是 String 类型返回 true,否则返回 false
|
|
234
|
+
*/
|
|
235
|
+
isString(obj: any): boolean;
|
|
236
|
+
/**
|
|
237
|
+
* 判断对象是否为 true
|
|
238
|
+
* <pre>
|
|
239
|
+
* 内置 true 枚举值:[true, 1, "1", "true", "TRUE", "Y", 'y', "YES", "yes", "ON", "on", '是', '开']
|
|
240
|
+
* </pre>
|
|
241
|
+
* @param obj 待检测的对象
|
|
242
|
+
* @returns 如果满足 true 枚举值返回 true,否则返回 false
|
|
243
|
+
*/
|
|
244
|
+
isTrue(obj: any): boolean;
|
|
245
|
+
/**
|
|
246
|
+
* 判断对象是否为 boolean 类型或布尔值字符串
|
|
247
|
+
* <pre>
|
|
248
|
+
* 内置 true 枚举值:[true, 1, "1", "true", "TRUE", "Y", 'y', "YES", "yes", "ON", "on", '是', '开']
|
|
249
|
+
* 内置 false 枚举值:[false, 0, "0", "false", "FALSE", "N", 'n', "NO", "no", "OFF", "off", '否', '关']
|
|
250
|
+
* </pre>
|
|
251
|
+
* 与 isTrue 的区别:
|
|
252
|
+
* <pre>
|
|
253
|
+
* 1、isTrue:满足内置 true 枚举值返回 true,否则返回 false
|
|
254
|
+
* 2、isBoolean:满足内置 true 或 false 枚举值中任意值返回 true,否则返回 false
|
|
255
|
+
* </pre>
|
|
256
|
+
* @param obj 待检测的对象
|
|
257
|
+
* @returns 如果是布尔类型或布尔值字符串返回 true,否则返回 false
|
|
258
|
+
*/
|
|
259
|
+
isBoolean(obj: any): boolean;
|
|
260
|
+
/**
|
|
261
|
+
* 判断字符串是否为整数
|
|
262
|
+
* @param value 待检测的字符串
|
|
263
|
+
* @returns 如果是整数返回 true,否则返回 false
|
|
264
|
+
*/
|
|
265
|
+
isInteger(value: any_str): boolean;
|
|
266
|
+
/**
|
|
267
|
+
* 判断字符串是否为数字格式
|
|
268
|
+
* @param str 待检测的字符串
|
|
269
|
+
* @returns 如果是数字格式返回 true,否则返回 false
|
|
270
|
+
*/
|
|
271
|
+
isNumber(str: any): boolean;
|
|
272
|
+
/**
|
|
273
|
+
* 解析 URL 查询参数并封装为参数对象
|
|
274
|
+
* @param search URL 查询参数字符串
|
|
275
|
+
* @returns 查询参数对象
|
|
276
|
+
*/
|
|
277
|
+
parseQuery(search: string | ""): QueryParams;
|
|
278
|
+
/**
|
|
279
|
+
* 解析 URI
|
|
280
|
+
* @param source URI 字符串
|
|
281
|
+
* @param strictMode 是否使用严格模式解析
|
|
282
|
+
* @returns 解析后的 URI 对象
|
|
150
283
|
*/
|
|
151
|
-
|
|
284
|
+
parseUri(source: string | "", strictMode?: boolean): URI;
|
|
152
285
|
/**
|
|
153
|
-
* 新增参数到URL上
|
|
154
|
-
* @param url
|
|
286
|
+
* 新增参数到 URL 上
|
|
287
|
+
* @param url URL 字符串
|
|
155
288
|
* @param key 参数名
|
|
156
289
|
* @param value 参数值
|
|
157
|
-
* @param override
|
|
158
|
-
* @
|
|
290
|
+
* @param override 是否覆盖原有参数,默认为 false
|
|
291
|
+
* @returns 新的 URL 字符串
|
|
159
292
|
*/
|
|
160
293
|
addParamToURL(url: string, key: string, value: any, override?: boolean): string;
|
|
161
294
|
/**
|
|
162
|
-
*
|
|
163
|
-
* @param url
|
|
295
|
+
* 新增参数对象到 URL 上
|
|
296
|
+
* @param url URL 字符串
|
|
164
297
|
* @param params 参数对象
|
|
165
|
-
* @param override
|
|
166
|
-
* @
|
|
298
|
+
* @param override 是否覆盖原有参数,默认为 false
|
|
299
|
+
* @returns 新的 URL 字符串
|
|
167
300
|
*/
|
|
168
301
|
addParamObjToURL(url: string, params: Record<any, any> | object, override?: boolean): string;
|
|
169
302
|
/**
|
|
170
|
-
*
|
|
171
|
-
* @param url
|
|
172
|
-
* @param keys
|
|
173
|
-
* @
|
|
174
|
-
**/
|
|
175
|
-
removeParamFromURL(url: string, keys?: string[] | string): string;
|
|
176
|
-
/**
|
|
177
|
-
* 字符串是否全部是中文
|
|
178
|
-
* @param obj
|
|
303
|
+
* 从 URL 上删除参数
|
|
304
|
+
* @param url URL 字符串
|
|
305
|
+
* @param keys 要删除的参数名(字符串或数组)
|
|
306
|
+
* @returns 新的 URL 字符串
|
|
179
307
|
*/
|
|
180
|
-
|
|
308
|
+
removeParamFromURL(url: string, keys?: string[] | string): string;
|
|
181
309
|
/**
|
|
182
|
-
*
|
|
183
|
-
* @param
|
|
310
|
+
* 随机打乱数组顺序
|
|
311
|
+
* @param arr 待打乱的数组
|
|
312
|
+
* @returns 打乱后的数组
|
|
184
313
|
*/
|
|
185
|
-
|
|
314
|
+
shuffle: typeof shuffle;
|
|
186
315
|
/**
|
|
187
|
-
*
|
|
188
|
-
* @param str
|
|
316
|
+
* 左填充内容
|
|
317
|
+
* @param str 基础字符串
|
|
318
|
+
* @param len 填充后的总长度
|
|
319
|
+
* @param ch 填充字符,默认为空格
|
|
320
|
+
* @returns 填充后的字符串
|
|
189
321
|
*/
|
|
190
|
-
|
|
322
|
+
lpad(str: any_str, len: number, ch?: string): any_str;
|
|
191
323
|
/**
|
|
192
|
-
*
|
|
193
|
-
* @param str
|
|
324
|
+
* 右填充内容
|
|
325
|
+
* @param str 基础字符串
|
|
326
|
+
* @param len 填充后的总长度
|
|
327
|
+
* @param ch 填充字符,默认为空格
|
|
328
|
+
* @returns 填充后的字符串
|
|
194
329
|
*/
|
|
195
|
-
|
|
330
|
+
rpad(str: any_str, len: number, ch?: string): any_str;
|
|
196
331
|
/**
|
|
197
|
-
*
|
|
198
|
-
* @param str
|
|
199
|
-
* @
|
|
332
|
+
* 下划线转驼峰
|
|
333
|
+
* @param str 下划线格式的字符串
|
|
334
|
+
* @returns 驼峰格式的字符串
|
|
200
335
|
*/
|
|
201
|
-
|
|
336
|
+
toCamelCase(str: any): any;
|
|
202
337
|
/**
|
|
203
|
-
*
|
|
338
|
+
* 驼峰转下划线
|
|
339
|
+
* @param str 驼峰格式的字符串
|
|
340
|
+
* @param lowerCase 是否转为小写,默认为 true
|
|
341
|
+
* @returns 下划线格式的字符串
|
|
204
342
|
*/
|
|
205
|
-
|
|
343
|
+
toUnderlineCase(str: any, lowerCase?: boolean): any;
|
|
206
344
|
/**
|
|
207
|
-
*
|
|
208
|
-
* @param str
|
|
345
|
+
* 去除字符串空白
|
|
346
|
+
* @param str 基础字符串
|
|
347
|
+
* @param flag 去除模式:0=去除左右空白,1=去除左边空白,2=去除右边空白,默认为 0
|
|
348
|
+
* @returns 去除空白后的字符串
|
|
209
349
|
*/
|
|
210
|
-
|
|
350
|
+
trim<T = string>(str: T, flag?: TrimMode): any;
|
|
211
351
|
/**
|
|
212
|
-
*
|
|
213
|
-
* @param str
|
|
352
|
+
* 去除字符串左边的内容
|
|
353
|
+
* @param str 基础字符串
|
|
354
|
+
* @param prefix 要去除的左边内容,如果不指定则去除左边空白
|
|
355
|
+
* @returns 去除后的字符串
|
|
214
356
|
*/
|
|
215
|
-
|
|
357
|
+
trimLeft<T = string>(str: T, prefix?: string): T;
|
|
216
358
|
/**
|
|
217
|
-
*
|
|
218
|
-
* @param
|
|
359
|
+
* 去除字符串右边的内容
|
|
360
|
+
* @param str 基础字符串
|
|
361
|
+
* @param suffix 要去除的右边内容,如果不指定则去除右边空白
|
|
362
|
+
* @returns 去除后的字符串
|
|
219
363
|
*/
|
|
220
|
-
|
|
364
|
+
trimRight<T = string>(str: T, suffix?: string): T;
|
|
221
365
|
/**
|
|
222
|
-
*
|
|
223
|
-
*
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
*
|
|
228
|
-
*
|
|
366
|
+
* 获取对象类型
|
|
367
|
+
* <pre>
|
|
368
|
+
* 例如:
|
|
369
|
+
* type('123') 返回 'String'
|
|
370
|
+
* type(133) 返回 'Number'
|
|
371
|
+
* type([]) 返回 'Array'
|
|
372
|
+
* type() 返回 'Undefined'
|
|
373
|
+
* type(null) 返回 'Null'
|
|
374
|
+
* </pre>
|
|
375
|
+
* @param obj 待检测的对象
|
|
376
|
+
* @returns 对象类型字符串
|
|
229
377
|
*/
|
|
230
|
-
|
|
378
|
+
type(obj: any): string;
|
|
231
379
|
/**
|
|
232
|
-
*
|
|
233
|
-
* @
|
|
380
|
+
* 生成 32 位 UUID
|
|
381
|
+
* @returns UUID 字符串
|
|
234
382
|
*/
|
|
235
|
-
|
|
383
|
+
uuid(): string;
|
|
236
384
|
/**
|
|
237
|
-
*
|
|
238
|
-
* @param str
|
|
385
|
+
* 生成随机字符串
|
|
239
386
|
*/
|
|
240
|
-
|
|
387
|
+
random: typeof random;
|
|
241
388
|
/**
|
|
242
|
-
*
|
|
243
|
-
*
|
|
389
|
+
* 数据分页
|
|
390
|
+
* <pre>
|
|
391
|
+
* 例如:
|
|
392
|
+
* page([1,2,3,4,5,6,7,8,9,10], 3) 返回 [[1,2,3],[4,5,6],[7,8,9],[10]]
|
|
393
|
+
* page([1,2,3,4,5,6,7,8,9,10], 3, 3) 返回 [[7,8,9]]
|
|
394
|
+
* </pre>
|
|
395
|
+
* @param arr 数据列表
|
|
396
|
+
* @param pageSize 分页大小
|
|
397
|
+
* @param pageNo 页码(从 1 开始),不指定则返回全部分页数据
|
|
398
|
+
* @returns 分页后的数组
|
|
244
399
|
*/
|
|
245
|
-
|
|
246
|
-
isIPv4(str: any_str): boolean;
|
|
400
|
+
page(arr: any, pageSize: any, pageNo: any): any[];
|
|
247
401
|
/**
|
|
248
|
-
*
|
|
249
|
-
* @
|
|
250
|
-
* @param v6
|
|
402
|
+
* 获取当前浏览器 DPI
|
|
403
|
+
* @returns DPI 值
|
|
251
404
|
*/
|
|
252
|
-
isIP(str: any_str, v6?: boolean): boolean;
|
|
253
405
|
getDPI(): number;
|
|
254
406
|
/**
|
|
255
407
|
* 毫米转像素
|
|
256
|
-
* @param mm
|
|
257
|
-
* @param dpi
|
|
408
|
+
* @param mm 毫米值
|
|
409
|
+
* @param dpi DPI 值,默认使用当前屏幕 DPI
|
|
410
|
+
* @returns 像素值
|
|
258
411
|
*/
|
|
259
412
|
mm2px(mm: number, dpi?: number): number;
|
|
260
413
|
/**
|
|
261
414
|
* 像素转毫米
|
|
262
|
-
* @param px
|
|
263
|
-
* @param dpi
|
|
415
|
+
* @param px 像素值
|
|
416
|
+
* @param dpi DPI 值,默认使用当前屏幕 DPI
|
|
417
|
+
* @returns 毫米值
|
|
264
418
|
*/
|
|
265
419
|
px2mm(px: number, dpi?: number): number;
|
|
266
420
|
/**
|
|
267
|
-
*
|
|
268
|
-
* @param inc
|
|
269
|
-
* @param dpi
|
|
421
|
+
* 英寸转像素
|
|
422
|
+
* @param inc 英寸值
|
|
423
|
+
* @param dpi DPI 值,默认使用当前屏幕 DPI
|
|
424
|
+
* @returns 像素值
|
|
270
425
|
*/
|
|
271
426
|
in2px(inc: number, dpi: number): number;
|
|
272
427
|
/**
|
|
273
428
|
* 像素转英寸
|
|
274
|
-
* @param px
|
|
275
|
-
* @param dpi
|
|
429
|
+
* @param px 像素值
|
|
430
|
+
* @param dpi DPI 值,默认使用当前屏幕 DPI
|
|
431
|
+
* @returns 英寸值
|
|
276
432
|
*/
|
|
277
433
|
px2in(px: number, dpi: number): number;
|
|
278
434
|
/**
|
|
279
435
|
* 英寸转毫米
|
|
280
|
-
* @param inc
|
|
436
|
+
* @param inc 英寸值
|
|
437
|
+
* @returns 毫米值
|
|
281
438
|
*/
|
|
282
439
|
in2mm(inc: number): number;
|
|
283
440
|
/**
|
|
284
441
|
* 毫米转英寸
|
|
285
|
-
* @param mm
|
|
442
|
+
* @param mm 毫米值
|
|
443
|
+
* @returns 英寸值
|
|
286
444
|
*/
|
|
287
445
|
mm2in(mm: number): number;
|
|
288
446
|
/**
|
|
289
|
-
* 获取 innerText
|
|
290
|
-
* @param str
|
|
447
|
+
* 获取 innerText(去除 HTML 标签)
|
|
448
|
+
* @param str HTML 字符串
|
|
449
|
+
* @returns 去除 HTML 标签后的纯文本
|
|
291
450
|
*/
|
|
292
451
|
getInnerText(str: string): string;
|
|
452
|
+
/**
|
|
453
|
+
* 克隆对象(深拷贝)
|
|
454
|
+
* @param obj 待克隆的对象
|
|
455
|
+
* @param deep 是否深拷贝,默认 true
|
|
456
|
+
* @returns 克隆后的对象
|
|
457
|
+
* @example
|
|
458
|
+
* // 深拷贝对象
|
|
459
|
+
* const cloned = Utils.clone({ a: 1, b: { c: 2 } });
|
|
460
|
+
*
|
|
461
|
+
* // 浅拷贝
|
|
462
|
+
* const shallow = Utils.clone({ a: 1, b: { c: 2 } }, false);
|
|
463
|
+
*
|
|
464
|
+
* // 克隆数组
|
|
465
|
+
* const arr = Utils.clone([1, 2, { x: 3 }]);
|
|
466
|
+
*
|
|
467
|
+
* // 克隆 Date
|
|
468
|
+
* const date = Utils.clone(new Date());
|
|
469
|
+
*
|
|
470
|
+
* // 克隆 Map/Set
|
|
471
|
+
* const map = Utils.clone(new Map([['a', 1]]));
|
|
472
|
+
* const set = Utils.clone(new Set([1, 2, 3]));
|
|
473
|
+
*/
|
|
474
|
+
clone<T>(obj: T, deep?: boolean): T;
|
|
293
475
|
};
|
|
294
|
-
/**
|
|
295
|
-
* 随机生成UUID
|
|
296
|
-
* @param len 长度
|
|
297
|
-
*/
|
|
298
|
-
export declare function uuid(len: number): string;
|
|
299
|
-
export declare function isArrayLike(obj: any): boolean;
|
|
300
|
-
export declare function isArray(obj: any): boolean;
|
|
301
|
-
export declare function shuffle<T>(arr: any): any;
|
|
302
|
-
/**
|
|
303
|
-
* 获取随机数, 默认 字母+数组
|
|
304
|
-
* @param len 随机数长度
|
|
305
|
-
* @param typeOrSource 随机数类型:1=字母+数字, 2=数字 , 3=字母,或者自定义数据源
|
|
306
|
-
*/
|
|
307
|
-
export declare function random(len?: number, typeOrSource?: RandomTypeOrSource): string;
|
|
308
|
-
declare const _Utils_: Utils;
|
|
309
476
|
export default _Utils_;
|
|
477
|
+
export declare type Utils = typeof _Utils_;
|