JS实现用特殊符号替换字符串的中间部分区域

Posted JentZhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS实现用特殊符号替换字符串的中间部分区域相关的知识,希望对你有一定的参考价值。

一、引入

  相信很多人都遇到过敏感信息需要做部分隐藏功能,大多数都是用特殊符号去替换。

       正好今天我又遇到这样的前端显示的需求,正好把相关JS记录下来,方便下次再用。

二、JS部分

/* 部分隐藏处理
** str 需要处理的字符串
** frontLen  保留的前几位
** endLen  保留的后几位
** cha  替换的字符串
*/
function plusXing(str, frontLen, endLen,cha) {
    var len = str.length - frontLen - endLen;
    var xing = \'\';
    for (var i = 0; i < len; i++) {
        xing += cha;
    }
    return str.substring(0, frontLen) + xing + str.substring(str.length - endLen);
};    

三、应用实例

 1 <!doctype html>
 2 <html lang="en">
 3  <head>
 4   <meta charset="UTF-8">
 5   <meta name="Generator" content="EditPlus®">
 6   <meta name="Author" content="">
 7   <meta name="Keywords" content="">
 8   <meta name="Description" content="">
 9   <title>隐藏字符</title>
10   <script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"></script>
11   <style>
12     div{
13         margin:20px;
14         padding:20px;
15     }
16     input[type=\'button\']{
17         padding:10px;
18     }
19     #btn_div{
20         margin-left:100px;
21     }
22   </style>
23  </head>
24  <body>
25   <div>处理之前:<input type="text" id="num"/></div>
26 
27   <div id=\'btn_div\'><input type="button" value="隐藏处理" onclick="yincang();"></div>
28 
29   <div>处理之后:<span id="secret_num"></span></div>
30 
31   <script>
32         function yincang(){
33             var num=$(\'#num\').val();
34             var secret_num=plusXing(num,3,4,\'*\');
35             $(\'#secret_num\').text(secret_num);
36         };
37 
38         /* 部分隐藏处理
39         ** str 需要处理的字符串
40         ** frontLen  保留的前几位
41         ** endLen  保留的后几位
42         ** cha  替换的字符串
43 
44         */
45         function plusXing(str, frontLen, endLen,cha) {
46             var len = str.length - frontLen - endLen;
47             var xing = \'\';
48             for (var i = 0; i < len; i++) {
49                 xing += cha;
50             }
51             return str.substring(0, frontLen) + xing + str.substring(str.length - endLen);
52         };
53   </script>
54  </body>
55 </html>
隐藏部分字符串

四、实例效果

  

 

 

五、总结

  这样就实现了前端显示的隐藏部分敏感信息的功能了。

  其实这个功能完全可以在后台实现,那样应该是更安全的!

以上是关于JS实现用特殊符号替换字符串的中间部分区域的主要内容,如果未能解决你的问题,请参考以下文章

手机号码中间部分替换成星号

JS的自定义函数有啥命名的规则,大小写、数字、特殊符号、开头等

Java替换特殊字符的方法是啥 做好Java必须会的内容就在这里了

带有正则表达式替换的特殊符号

java中怎么用toString方法去除字符串中的标点,符号和数字?

JavaScript实现 字符串中间替换成特殊字符