字符串处理的两个小技巧

在项目开发的过程中,常常遇到一些HTML与动态数据组成字符串的东西,写起代码会特别的累。下面我会分享两个小技巧。

第一个是事符串的格式化:

ExpandedBlockStart.gif 事符格式化
/* *
* 事符格式化
*/
String.format 
=   function (str) {
    
var  args  =  arguments, re  =   new  RegExp( " %([1- "   +  args.length  +   " ]) " " g " );
    
return  String(str).replace(
    re,
    
function ($ 1 , $ 2 ) {
        
return  args[$ 2 ];
    }
    );
};

 

上面的代码是我从163的前端博客上抄过来的。实际应用还是挺方便的。

把这个代码贴在你的JS里就可以直接使用了。怎么使用?还是给个例子吧。

var  temp  =   " 使用%1代码,去实现%2 " ;
alert(String.format(temp,
" JS " , " 功能1 " ));    // 会提示使用JS代码,去实现功能1
alert(String.format(temp, " PHP " , " 功能2 " ));   // 会提示使用PHP代码,去实现功能2

 

temp相当于一个模板。format函数里,根据参数顺序去模板里的名字。

 

第二个同样是事符串的格式化,不过我作了小小的变化,虽然性能可能没那么快,不过使用就更为方便一些, 不用去看是哪个位置:

String.formatmodel = function (str,model){
    
for(var k in
 model){
        
var re = new RegExp("{"+k+"}","g"
);
        str 
=
 str.replace(re,model[k]);
    }
    
return
 str;
}

 

这个方法是可以直接传递对象进去。使用例子是:

var  temp  =   " 使用{code}代码,去实现{fun} " ;
alert(String.formatmodel(temp,{code:
" JS " ,fun: " 功能1 " }));
alert(String.formatmodel(temp,{code:
" PHP " ,fun: " 功能2 " }));

 

 

这两个小技巧希望可以帮助在开发过程中少做一些繁琐的事情。

转载于:https://www.cnblogs.com/Max-Gan/archive/2011/01/27/1946163.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值