基于JavaScript实现的轻量级字符串占位符替换函数

本文介绍了一个使用JavaScript编写的轻量级字符串占位符替换函数,该函数支持嵌套表达式。函数通过指定的占位符前缀和后缀,从给定的数据对象中获取值,将占位符替换为对应的值。通过示例展示了如何使用该函数,以及测试代码,输出结果为:嵌套属性-我的-测试-YY。
摘要由CSDN通过智能技术生成

基于JavaScript实现的轻量级字符串占位符替换函数,占位符支持嵌套表达式,代码如下:

 /*
   * 占位符替换函数。占位符支持嵌套表达式,如a.b.c
   * str:字串模板
   * prefix:占位符前缀
   * surfix:占位符后缀
   * obj:数据对象
   */
   function replaceHolder(str,prefix,surfix,obj){
    var ret = '';
    var p1=0,p2=0;
    while(true){
     p1 = str.indexOf(prefix,p2);
     if(p1==-1) break;
     
     if(p1>p2) ret+=str.substring(p2,p1);
     
     p2 = str.indexOf(surfix,p1+prefix.length);
     if(p2==-1) break;
     
     var holder = str.substring(p1+prefix.length,p2);
     var nests = holder.split('.');
     var val = obj;
     for(var i=0;i<nests.length;i++){
      try{
       val = val[nests[i]];
      }catch(E){
       alert("非法的属性表达式:"+holde

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值