当前位置: 首页 > article >正文

前端开发必备:实用Tool封装工具类方法大全

程序员必备宝典网站icon-default.png?t=O83Ahttps://tmxkj.top/#/

1.判断空值

/**
 * 判断是否是空值
 */
export function isEmpty(value) {
    if (typeof value === 'string') {
       return value.length === 0 || value === "";
    } else if (typeof value === 'number') {
       return value === 0;
    } else if (Array.isArray(value)) {
       return value===[];
    } else if (typeof value === 'object' && value !== null) {
       return value==={};
    } else if (value || value===false){
        return false;
    } else return value == null || typeof value === 'undefined';
}

2.校验是否是QQ邮箱

/**
 * 校验是否是邮箱
 */
export function isValidQQEmail(email) {
    let re = /^[1-9][0-9]{4,10}@qq\.com$/;
    return re.test(String(email).toLowerCase());
}

3.校验手机号

/**
 * 校验手机号
 */
export function isPhoneNumberValid(phoneNumber) {
    if (phoneNumber.toString().length===11){
        const regex = /^1[3-9]\d{9}$/;
        return regex.test(phoneNumber);
    }else {
        return false;
    }
}

4.消息提示(element-plus)

/**
 * 消息提示
 */

export function isMsg(res={code:200,msg:"成功"}){
    if (res.code===200){
        ElNotification({
            title: '提示',
            message: res.msg,
            type: 'success',
            zIndex:99999,
        })
    }else if(res.code=== 400 || res.code === 404) {
        ElNotification({
            title: '提示',
            message: res.msg,
            type: 'warning',
            zIndex:99999,
        })
    }else if(res.code===500){
        ElNotification({
            title: '提示',
            message: res.msg,
            type: 'error',
            zIndex:99999,
        })
    }else {
        ElNotification({
            title: '提示',
            message: res.msg,
            type: 'info',
            zIndex:99999,
        })
    }
}

5.get参数转换

/**
 * 参数转换
 * @param result
 * @returns {string}
 */
 const queryParam =result=> {
    let queryString = Object.keys(result)
        .map(key => `${encodeURIComponent(key)}=${encodeURIComponent(result[key])}`)
        .join('&');
    if (queryString.length >= 2) {
        return '?' + queryString;
    } else {
        return '';
    }

}

6.身份证校验

/**
 *身份证校验
 */
export function IdCardVerify(e) {
    // 身份证号码正则表达式
    var reg = /^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/;
    let pass= reg.test(e);
    let sex = "男"
    if (pass){
        sex = parseInt(e.substr(16, 1)) % 2 === 0 ? '女' : '男';
    }else {
        return {pass,sex}
    }
}

7.网页参数转对象

/**
 * 网页参数转对象
 */
export function paramsTransform(e){
    let params = {};
    let pairs = e.split('&');
    for (let i = 0; i < pairs.length; i++) {
        let pair = pairs[i].split('=');
        params[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);
    }
    return params;
}

8.本地模糊查询

/**
 * 本地模糊查询
 */
export function likeFilter(lists,keyWord){
   return  lists.filter(item => {
       return Object.values(item).some(val =>
           val?.toString().includes(keyWord))
   });
}


http://www.kler.cn/a/320640.html

相关文章:

  • <项目代码>YOLOv8 番茄识别<目标检测>
  • vue使用List.reduce实现统计
  • 从零入门激光SLAM(二十三)——direct_visual_lidar_calibration全型号激光雷达-相机标定包
  • HDMI之SBTM
  • 计算机网络在线测试-概述
  • 游戏引擎学习第13天
  • vscode【实用插件】Markdown Preview Enhanced 预览 .md 文件
  • 时尚与科技的融合,戴上更轻更悦耳的QCY C30耳夹耳机,随时享受好音乐
  • 计算机毕业设计 基于Python的荣誉证书管理系统 Django+Vue 前后端分离 附源码 讲解 文档
  • python自定义日志等级
  • 企业级-pdf预览-前后端
  • 免费开源的AI 智能网盘,图片和媒体管理工具 | 极空间部署『PicHome』
  • GUI编程18:文本框、密码框、文本域
  • MT76X8、MT7621和MT7981 接NOR FALSH分区表
  • Focalboard开源项目管理系统本地Windows部署与远程访问协同办公
  • C语言读取一行字符_只需要看第四条
  • vue3中echarts柱状图横轴文字太多放不下怎么解决
  • 【深度学习】初识神经网络
  • JAVA同城服务场馆门店预约系统支持H5小程序APP源码
  • [vulnhub] pWnOS v2.0
  • 《MATLAB项目实战》,专栏目录和介绍
  • JavaScript 数据可视化:前端开发的核心工具
  • 校园美食地图:Spring Boot实现的探索与分享平台
  • xpath应用大全
  • Relations Prediction for Knowledge Graph Completion using Large Language Models
  • PG逻辑订阅功能