• 学习坤哥的replaceTpl方法


    学习坤哥的方法之后自己写的replaceTpl

    function replaceTpl(tpl, data){///////////////没有传入可让用户自己定义的方式进行替换,不够灵活
                    var reg = /{([^}*])}/g,
                        trim = String.trim || function(str){
                            str = str.replace(/^s+|s+$/g, "");
                            return str;
                        }
                    tpl = tpl.replace(reg, function(str, key){///////////str,key是replace方法自动传入的,str是reg匹配的字符串,

                              ////key是第一个捕获组捕获的字符串,还可以传入第二、三,,,个捕获组捕获的字符串
                        str = data[trim(key)];  ///////////////多次的赋值使代码繁琐
                        return str;
                    });
                    return tpl;
                }

    坤哥的replaceTpl

    replaceTpl: function (tpl, data, label) {
            var t = String(tpl),/////////////////不明白为什么要进行这一步处理。
                s = label || /#{([^}]*)}/mg,
                trim = String.trim ||
                    function (str) {
                        return str.replace(/^s+|s+$/g, '')
                    };
            return t.replace(s, function (value, name) {
                //从模板获取name,容错处理
                return value = data[trim(name)];
            });
        }

  • 相关阅读:
    被Play framework狠狠的play了一把
    ant导入Zookeeper到Eclipse错误path contains invalid character
    Hadoop2.4代码的坑
    uml类关系
    Hadoop 源码编译导出
    Eclipse 导入 Hadoop 源码
    js中的prototype和constructor
    react之路:使用redux-immutable
    react之路:使用actionCreators和constants
    react之路:使用combineReducers拆分reducer
  • 原文地址:https://www.cnblogs.com/charling/p/3332188.html
Copyright © 2020-2023  润新知