位置:首页 > web前端 > javascript

js如何将手机号的中间4位变成*号

dearweb 发布:2023-03-02 09:53:19阅读:

要将手机号的中间四位替换为星号,可以使用 JavaScript 中的字符串方法 `replace()` 和正则表达式来实现。下面是一种可能的实现方式:


const phoneNumber = "12345678901";
const maskedNumber = phoneNumber.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2");
console.log(maskedNumber); // 输出 123****8901


这段代码中,我们首先定义了一个手机号字符串 `phoneNumber`,然后使用 `replace()` 方法将其中的中间四位替换为星号,生成一个新的字符串 `maskedNumber`。具体来说,我们使用了一个正则表达式 `/(\d{3})\d{4}(\d{4})/`,它可以匹配一个 11 位的手机号,并将其分成三个部分:


- `(\d{3})` 表示前三位数字,使用了一个捕获组。

- `\d{4}` 表示中间四位数字,不需要捕获。

- `(\d{4})` 表示后四位数字,使用了另一个捕获组。


然后,我们在 `replace()` 方法中使用了 `$1****$2` 这样的字符串作为替换模板,其中 `$1` 表示第一个捕获组的内容,也就是手机号的前三位数字,`$2` 表示第二个捕获组的内容,也就是手机号的后四位数字。这样,我们就把中间的四位数字替换成了四个星号,得到了一个新的被屏蔽了中间四位的手机号。


需要注意的是,这种实现方式仅适用于中国大陆的手机号码,因为它假设了手机号码的格式是前三位+中间四位+后四位。如果要适用于其他地区的手机号,需要根据具体的格式来修改正则表达式和替换模板。


24人点赞 返回栏目 提问 分享一波

小礼物走一波,支持作者

还没有人赞赏,支持一波吧

留言(问题紧急可添加微信 xxl18963067593) 评论仅代表网友个人 留言列表

暂无留言,快来抢沙发吧!

本刊热文
网友在读
手机扫码查看 手机扫码查看