在js中如何优雅地写html代码

函数脚本:

function tohtml(tmpl,data){
    var ret = tmpl.toString().match(/\/\*>([\s\S]*?)<\*\//)[1];//取得 html 代码模板
    ret = ret.replace(/\$\{\{[^${{]+\}\}/g, function (variable) {
        variable = variable.replace('${{', '').replace('}}', '');//取得模板中的变量名
        var value = data;
        variable.split('.').forEach(function (section) {
                if(value && value[section]){
                    value = value[section];			//取得该变量对应的值
                }else{ value = "${{"+variable+"}}"; }//该变量没有值
        });        //console.log(variable,value);
        return value;
    });//替换模板中的${{变量名}}为对应的值
    return ret;
}

调用例程:

html_code = tohtml(
		    function(){/*>
		        12${{text1}}34${{data.text2}}56${{data.text3}}78${{data1}}90${{data1.text4}}
		 <*/},
		    {	text1:"+",
		        data:{
		            text2:"-",
		        }
		    });
console.log("html_code" , html_code);

运行结果:

html_code 
		        12+34-56${{data.text3}}78${{data1}}90${{data1.text4}}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值