You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.2 KiB
52 lines
1.2 KiB
10 months ago
|
export { isArray, isBoolean, isDate, isObject, isFunction, isString, isNumber, isNull } from 'lodash-es'
|
||
|
import { isObject } from 'lodash-es'
|
||
|
/**
|
||
|
* @description 是否是http,邮件,电话号码
|
||
|
*/
|
||
|
export function isExternal(path: string) {
|
||
|
return /^(https?:|mailto:|tel:)/.test(path)
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @description 是否是http
|
||
|
*/
|
||
|
export const isLinkHttp = (link: string): boolean => /^(https?:)?\/\//.test(link)
|
||
|
|
||
|
/**
|
||
|
* @description 是否是电话号码
|
||
|
*/
|
||
|
export const isLinkTel = (link: string): boolean => /^tel:/.test(link)
|
||
|
|
||
|
/**
|
||
|
* @description 是否是手机号码
|
||
|
*/
|
||
|
export const isPhone = (link: string): boolean => /^1[3|5|6|7|8|9][0-9]{9}$/.test(link)
|
||
|
|
||
|
/**
|
||
|
* @description 是否是邮件
|
||
|
*/
|
||
|
export const isLinkMailto = (link: string): boolean => /^mailto:/.test(link)
|
||
|
|
||
|
/**
|
||
|
* @description 是否为空
|
||
|
* @param {unknown} value
|
||
|
* @return {Boolean}
|
||
|
*/
|
||
|
export const isEmpty = (value: unknown) => {
|
||
|
return value !== null && value !== '' && typeof value !== 'undefined'
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @description 是否为空对象
|
||
|
* @param {Object} value
|
||
|
* @return {Boolean}
|
||
|
*/
|
||
|
export const isEmptyObject = (target: object) => {
|
||
|
return isObject(target) && !Object.keys(target).length
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 手机号码验证
|
||
|
*/
|
||
|
export const PhoneReg = /^1[3|5|6|7|8|9][0-9]{9}$/
|