日报_27

133 阅读1分钟

2020年5月30日 星期六

A calm heart stills all panic.

一个愉快的周六,今天上午的就是对上周背诵的面试题进行了一个复习,然后呢就是把JavaScript的红皮书进行了一个阅读,以此提高自己的js薄弱的基础,然后下午呢回老家看望了一下爷爷。晚上回家呢又学着封装了一个弹框的ui组件。封装组件呢对于我还是有一点吃力,还是在努力的搞清楚他的原理。

给大家分享一些常用的工具方法:

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、是否url地址

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

4、是否数字

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

4、是否为PC端

export const isPC = () => {
    var userAgentInfo = navigator.userAgent;
    var Agents = ["Android", "iPhone",
        "SymbianOS", "Windows Phone",
        "iPad", "iPod"];
    var flag = true;
    for (var v = 0; v < Agents.length; v++) {
        if (userAgentInfo.indexOf(Agents[v]) > 0) {
            flag = false;
            break;
        }
    }
    return flag;
}

5、滚动到顶部

export const scrollToTop = () => {
    const c = document.documentElement.scrollTop || document.body.scrollTop;
    if (c > 0) {
        window.requestAnimationFrame(scrollToTop);
        window.scrollTo(0, c - c / 8);
    }
}