js 用**遮罩身份证以及手机号中间部位,进行掩码处理
一、应用场景
实例将 18位身份证 以及11位的手机号进行遮掩处理
样例为 42333333330435 和15765559657
转为的结果如图:
二、实现思路
转化的代码为 自己创建一个js文件将代码复制进去,思路是可以传 头部显示多少位置 ,末尾显示几位,然后进行计算中间的星星数,最近进行拼接则达到我们想要的数据。
// 设置**遮罩隐藏 参数( 数据 前三位 后四位) function basecclusion(data, frontShow, afterShow) { if (data.length <= afterShow) return ""; let dataLengh = data.length; if (dataLengh > frontShow + afterShow) { let obscuringStar = '*'; // 计算中间星星数 for (let i = 0; i < dataLengh - frontShow - afterShow; i++) { obscuringStar += '*'; } return data.substring(0, frontShow) + obscuringStar + data.substring(data.length - afterShow, data.length); } else { return '—'; // 不规范时返回'-' } } // 自定义 遮盖长度 export function occlusion(data, frontShow, afterShow) { return basecclusion(data, frontShow, afterShow); } // 身份证遮盖长度 export function occlusionToidCard(data) { return basecclusion(data, 6, 4); } // 手机号遮盖长度 export function occlusionToPhone(data) { return basecclusion(data, 3, 4); }-
三、使用方法
因为进行了二次封装 有三个方法,自己可以在basecclusion基础上自己设置,进行导出目前可以用有以下
occlusionToidCard 用来处理身份证,
occlusionToPhone用来处理手机号,
occlusion 动态设置的遮掩的长度
import { occlusionToidCard, occlusionToPhone, occlusion} from '@/utils/processing.js'; let idCard=421127333330435 console.log( occlusionToidCard(text)) // 输出421127********0435 let phone=15765559657 console.log( occlusionToidCard(phone)) // 输出157****9657 let text='404840我的' console.log(occlusion (text,2,3)) // 输出'404**0我的' 输出 前2个 和末尾3个显示
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
2009-10-10 js :实现图片上传前,预览客户端图片(兼容IE6和IE7)
2009-10-10 图表系列 - FusionCharts v3 http://www.fusioncharts.com/Free/
2009-10-10 Camtasia Studio V4.02 华丽而强大的屏幕录制工具