前端常用60余种工具方法(一)

简介: 前端常用60余种工具方法(一)

1.邮箱



export const isEmail = (s) => {
    return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)
}


2.手机号码



export const isMobile = (s) => {
    return /^1[0-9]{10}$/.test(s)
}


3.电话号码



export const isPhone = (s) => {
    return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)
}


4.是否url地址



export const isURL = (s) => {
    return /^http[s]?:\/\/.*/.test(s)
}


5.是否字符串



export const isString = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'String'
}


6.是否数字



export const isNumber = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Number'
}


7.是否boolean



export const isBoolean = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Boolean'
}


8.是否函数



export const isFunction = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Function'
}


9.是否为null



export const isNull = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Null'
}


10.是否undefined



export const isUndefined = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Undefined'
}


11.是否对象



export const isObj = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Object'
}


12.是否数组



export const isArray = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Array'
}


13.是否时间



export const isDate = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Date'
}


14.是否正则



export const isRegExp = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'RegExp'
}


15.是否错误对象



export const isError = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Error'
}


16.是否Symbol函数



export const isSymbol = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Symbol'
}


17.是否Promise对象



export const isPromise = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Promise'
}


18.是否Set对象



export const isSet = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1) === 'Set'
}
export const ua = navigator.userAgent.toLowerCase();


19.是否是微信浏览器



export const isWeiXin = () => {
    return ua.match(/microMessenger/i) == 'micromessenger'
}


20.是否是移动端



export const isDeviceMobile = () => {
    return /android|webos|iphone|ipod|balckberry/i.test(ua)
}



相关文章
|
1月前
|
前端开发
前端接受后端文件流并下载到本地的方法
前端接受后端文件流并下载到本地的方法
60 0
|
2月前
|
人工智能 JSON 前端开发
有关D2C工具的思考和分享, 提升前端研发效率
有关D2C工具的思考和分享, 提升前端研发效率
52 1
|
3月前
|
运维 前端开发 JavaScript
现代化前端开发工具与框架的演进
随着Web应用的复杂性不断增加,前端开发工具和框架在不断演进,以应对日益复杂的需求。本文将从前端开发工具、主流框架以及未来发展趋势等方面进行探讨,帮助读者了解现代化前端开发技术的最新动态。
|
3月前
|
缓存 前端开发 JavaScript
深入了解 Vite:快速、简洁、高效的前端构建工具(上)
深入了解 Vite:快速、简洁、高效的前端构建工具(上)
|
3月前
|
前端开发 JavaScript 测试技术
探索现代前端工程化工具与流程:提升开发效率和项目质量
探索现代前端工程化工具与流程:提升开发效率和项目质量
探索现代前端工程化工具与流程:提升开发效率和项目质量
|
3月前
|
人工智能 前端开发 测试技术
AI:探究下前端组件化设计的实现方法及其重要性(一)
AI:探究下前端组件化设计的实现方法及其重要性
|
3月前
|
Rust 前端开发 JavaScript
第4期 一文了解前端打包工具的发展
第4期 一文了解前端打包工具的发展
35 0
|
3月前
|
人工智能 缓存 前端开发
AI:探究下前端组件化设计的实现方法及其重要性(二)
AI:探究下前端组件化设计的实现方法及其重要性
|
3月前
|
前端开发 JavaScript API
微前端:一种新型的前端架构方法
微前端:一种新型的前端架构方法
97 0
|
3月前
|
前端开发 JavaScript API
[前端面试题]:数组去重的几种方法
[前端面试题]:数组去重的几种方法