码迷,mamicode.com
首页 > 其他好文 > 详细

前端自定义format函数,做字符串格式化功能

时间:2019-04-10 13:47:18      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:定位   log   turn   rgs   war   指定   mat   utf-8   code   

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>自定义format函数,做字符串格式化功能</title>
</head>
<body>
    <script>
        String.prototype.format = function (kwargs) {              //自定义定义format方法,这样字符串就多了一个自定义format方法kwargs接收字符串传来的字典
            //this就是当前调用这个方法的对象xixi。this= "xixi: {age} - {gender}"
            // kwargs={‘age‘:18,‘gender‘: ‘男‘}
            var ret = this.replace(/\{(\w+)\}/g,function (km,m) {  //replace通过正则匹配this里面以{}里面的都替换,km是匹配成功的值{age}和{gender},m是在km基础上把里面的分组提取到是age和gender,ret就是最后被返回的值
                return kwargs[m];                                  //拿到18和男
            });
            return ret;                                            //如果在这个函数有return的话匹配的位置就会被替换什么
        };

        //需要格式化的函数
        var v = "xixi: {age} - {gender}";                          //v=xixi: {age} - {gender}要把{age} - {gender}格式化到{‘age‘:18,‘gender‘: ‘男‘}的指定位置
        var result = v.format({age:18,gender: });          //v.执行自定义format方法传一个字典{‘age‘:18,‘gender‘: ‘男‘}进去,result就是格式化完成之后的值
        console.log(result);                                       //xixi: 18 - 男
    </script>
</body>
</html>

格式化后:
xixi: 18 - 男

前端自定义format函数,做字符串格式化功能

标签:定位   log   turn   rgs   war   指定   mat   utf-8   code   

原文地址:https://www.cnblogs.com/xixi18/p/10682718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!